Part Number Hot Search : 
FEP16CTA AHA3520 MAX6719 BAV21 PFZ220 D7808 Y100E B3034
Product Description
Full Text Search
 

To Download ADV601 Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  rev. 0 information furnished by analog devices is believed to be accurate and reliable. however, no responsibility is assumed by analog devices for its use, nor for any infringements of patents or other rights of third parties which may result from its use. no license is granted by implication or otherwise under any patent or patent rights of analog devices. a ADV601 one technology way, p.o. box 9106, norwood, ma 02062-9106, u.s.a. tel: 617/329-4700 world wide web site: http://www.analog.com fax: 617/326-8703 ? analog devices, inc., 1997 low cost multiformat video codec functional block diagram digital video i/o port wavelet filters, decimator, & interpolator adaptive quantizer run length coder huffman coder host i/o port & fifo serial port dram manager on-chip transform buffer host ADV601 low cost, multiformat video codec 256k x 16-bit dram (field store) dsp (optional) digital component video i/o features precise compressed bit rate control field independent compression flexible video interface supports all common formats, including ccir-656 general purpose 8-, 16- or 32-bit host interface with 512 deep 32-bit fifo performance real-time compression or decompression of ccir-601 and square pixel video: 720 3 288 @ 50 fields/sec pal 768 3 288 @ 50 fields/sec pal 720 3 243 @ 60 fields/sec ntsc 640 3 243 @ 60 fields/sec ntsc compression ratios from visually loss-less to 350:1 visually loss-less compression at 4:1 on natural images (typical) applications nonlinear video editing video capture systems remote cctv surveillance digital camcorders broadcast quality video distribution systems video insertion equipment image and video archival systems digital video tape high quality video teleconferencing general description the ADV601 is a very low cost, single chip, dedicated function, all digital cmos vlsi device capable of supporting visually loss-less to 350:1 real-time compression and decompression of ccir-601 digital video at very high image quality levels. the chip integrates glueless video and host interfaces with on-chip sram to permit low part count, system level implementations suitable for a broad range of applications. the ADV601 is a video encoder/decoder optimized for real-time compression and decompression of interlaced digital video. all features of the ADV601 are designed to yield high performance at a breakthrough systems-level cost. additionally, the unique sub-band coding architecture of the ADV601 offers you many application-specific advantages. a review of the general theory of operation and applying the ADV601 sections will help you get the most use out of the ADV601 in any given application. the ADV601 accepts component digital video through the video interface and outputs a compressed bit stream though the host interface in encode mode. while in decode mode, the ADV601 accepts a compressed bit stream through the host interface and outputs component digital video through the video interface. the host accesses all of the ADV601s control and status registers using the host interface. an optional digital signal processor (dsp) may be used for calculating quantiza- tion bin widths (bw) (instead of the host); the ADV601 sends current field statistics and receives bin width results as a packet i/o over the dsp serial port interface. a generic fixed-point dsp (for instance the adsp-2105) is more than adequate for these calculations. figure 1 summarizes the basic function of the part. (continued on page 2)
ADV601 C2C rev. 0 table of contents this data sheet gives an overview of the ADV601 functionality and provides details on designing the part into a system. the text of the data sheet is written for an audience with a general knowledge of designing digital video systems. where appropri- ate, additional sources of reference material are noted through- out the data sheet. general description . . . . . . . . . . . . . . . . . . . . . . . . . 1 internal architecture . . . . . . . . . . . . . . . . . . . . . 3 general theory of operation . . . . . . . . . . . . . . . 3 references . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 the wavelet kernel . . . . . . . . . . . . . . . . . . . . . . . . . 4 the programmable quantizer . . . . . . . . . . . . . . . 7 the run length co der and huf fman coder . . 8 encoding vs. decoding . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 programmers model . . . . . . . . . . . . . . . . . . . . . . . . 8 ADV601 register descriptions . . . . . . . . . . . . . . . 10 pin function descriptions . . . . . . . . . . . . . . . . . 16 video interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 host interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 dsp interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 dram manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 compressed data-stream definition . . . . . . . . . . . . . . . . 26 applying the ADV601 . . . . . . . . . . . . . . . . . . . . . . . . . 32 using the ADV601 in computer applications . . . . . . . . 32 using the ADV601 in stand-alone applications . . . . . . . 32 connecting the ADV601 to popular video decoders and encoders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 getting the most out of ADV601 . . . . . . . . . . . 35 ADV601 specifications . . . . . . . . . . . . . . . . . . . . . . . 36 test conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 timing parameters . . . . . . . . . . . . . . . . . . . . . . . . . . 37 clock signal timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 ccir-656 video format timing . . . . . . . . . . . . . . . . . . . 38 gray scale/philips video timing . . . . . . . . . . . . . . . . . . . 40 multiplexed philips video timing . . . . . . . . . . . . . . . . . . 43 host interface (indirect address, indirect register data, and interrupt mask/status) register timing . . . . . . . . 45 host interface (compressed data) register timing . . . . 47 dsp interface timing . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 general description ( continued from page 1 ) ADV601 low cost, multiformat video codec video interface host interface digital video in (encode) digital video out (decode) compressed video out (encode) compressed video in (decode) status & control figure 1. functional block diagram the ADV601 adheres to international standard ccir-601 for studio quality digital video. the codec also supports a range of field sizes and rates providing high performance in computer, pal, ntsc, or still image environments. the ADV601 is designed only for real-time interlaced video, full frames of video are formed and processed as two independent fields of data. the ADV601 supports the field rates and sizes in table i. note that the maximum active field size is 768 by 288. the maximum pixel rate is 14.75 mhz. the ADV601 has a generic 8-/16-/32-bit host interface, which includes a 512 position, 32-bit wide fifo for compressed video. with additional external hardware, the ADV601s host interface is suitable (when interfaced to other devices) for moving com- pressed video over pci, isa, scsi, sonet, 10 base t, arcnet, hdsl, adsl, and a broad range of digital interfaces. for a full description of the host interface, see the host interface section. the compressed data rate is determined by the input data rate and the selected compression ratio. the ADV601 can achieve a near constant compressed bit rate by using the current field statistics in the off-chip bin width calculator on the external dsp or host. the process of calculating bin widths on a dsp or host can be adaptive, optimizing the compressed bit rate in real time. this feature provides a near constant bit rate out of the host interface in spite of scene changes or other types of source material changes that would oth erwise create bit rate burst conditions. for more information on the quantizer, see the programmable quantizer section. the ADV601 typically yields visually loss-less compression on natural images at a 4:1 compression ratio. desired image quality levels can vary widely in different applications, so it is advisable to evaluate image quality of known source material at different compression ratios to find the best compression range for the table i. ADV601 field rates and sizes active active total total standard region region region region field rate pixel rate name horizontal vertical 1 horizontal vertical (hz) (mhz) 2 ccir-601/525 720 243 858 262.5 59.94 13.50 ccir-601/625 720 288 864 312.5 50.00 13.50 sq. pixel/525 640 243 780 262.5 59.94 12.27 sq. pixel/625 768 288 944 312.5 50.00 14.75 notes 1 the maximum active field size is 768 by 288. 2 the maximum pixel rate is 14.75 mhz.
ADV601 C3C rev. 0 application. the sub-band coding architecture of the ADV601 provides a number of options to stretch compression perfor- mance. these options are outlined on in the applying the ADV601 section. the dsp serial port interface (sport) enables performance of bin width calculations on a dsp instead of the host. the ADV601 transfers current video field statistics to the dsp and receives bin width data from the dsp as packet i/o through the dsp inter- face. a generic fixed-point dsp (i.e., the adsp-2105 low cost, fixed-point dsp) is more than adequate for these calculations. internal architecture the ADV601 is composed of nine blocks. four of these blocks are interface blocks and five are processing blocks. the in terface blocks are the digital video i/o port, the host i/o port, exter- nal dram manager, and the dsp serial i/o port. the process- ing blocks are the wavelet kernel, the on-chip transform buffer, the p rogrammable quantiz er, the run length coder, and the huffman coder. digital video i/o port provides a real-time uncompressed video interface to support a broad range of component digital video formats, including d1. host i/o port and fifo carries control, status, and compressed video to and from the host processor. a 512 position by 32-bit fifo buffers the com- pressed video stream between the host and the huffman coder. dram manager performs all tasks related to writing, reading, and refreshing the external dram. the external host buffer dram is used for reordering and buffering quantizer input and output values. serial port (to optional dsp) supports, during encode only, communication of wavelet statis- tics between the wavelet kernel and the dsp and quantizer control information between the dsp and the quantizer block. the user programmed compression ratio is also sent from the ADV601 host interface to the dsp automatically. note that a host processor can be used to replace the dsp functionality in computer applications. wavelet kernel (filters, decimator, and interpolator) gathers statistics on a per field basis and includes a block of filters, interpolators, and decimators. the kernel calculates forward and backward bi-orthogonal, two-dimensional, sepa- rable wavelet transforms on horizontal scanned video data. this block uses the internal transform buffer when performing wave- let transforms calculated on an entire images data and so eliminates any need for extremely fast external memories in an ADV601-based design. on-chip transform buffer provides an internal set of sram for use by the wavelet trans- form kernel. its function is to provide enough delay line storage to support calculation of separable two dimensional wavelet transforms for horizontally scanned images. programmable quantizer quantizes wavelet coefficients. quantize controls are calculated by the external dsp or host processor during encode operations and de-quantize controls are extracted from the compressed bit stream during decode. each quantizer bin width is computed by the bw calculator software to maintain a constant com- pressed bit rate or constant quality bit rate. a bin width is a per block parameter the quantizer uses when determining the num- ber of bits to allocate to each block (sub-band). run length coder performs run length coding on zero data and models nonzero data, encoding or decoding for more efficient huffman coding. this data coding is optimized across the sub-bands and varies depending on the block being coded. huffman coder performs huffman coder and decoder functions on quantized run-length coded coefficient values. the huffman coder/de- coder uses three rom-coded huffman tables that provide ex- cellent performance for wavelet transformed video. general theory of operation the ADV601 processors compression algorithm is based on the bi-orthogonal (7, 9) wavelet transform, and implements field independent sub-band coding. sub-band coders transform two- dimensional spatial video data into spatial frequency filtered sub-bands. the quantization and entropy encoding processes provide the ADV601s data compression. the wavelet theory, on which the ADV601 is based, is a new mathematical apparatus first explicitly introduced by morlet and grossman in their works on geophysics during the mid 80s. this theory became very popular in theoretical physics and applied math. the late 80s and 90s have seen a dramatic growth in wavelet applications such as signal and image processing. for more on wavelet theory by morlet and grossman, see decompo- sition of hardy functions into square integrable wavelets of con- stant shape (journal citation listed in references section). encode path decode path wavelet kernel filter bank adaptive quantizer run length coder & huffman coder compressed data figure 2. encode and decode paths references for more information on the terms, techniques and underlying principles referred to in this data sheet, you may find the follow- ing reference texts useful. a reference text for general digital video principles is: jack, k., video demystified: a handbook for the digital engineer (high text publications, 1993) isbn 1-878707-09-4 three reference texts for wavelet transform background infor- mation are: vetterli, m., kovacevic, j., wavelets and sub-band coding (prentice hall, 1995) isbn 0-13-097080-8 benedetto, j., frazier, m., wavelets: mathematics and applica- tions (crc press, 1994) isbn 0-8493-8271-8 grossman, a., morlet, j., decomposition of hardy functions into square integrable wavelets of constant shape , siam. j. math. anal., vol. 15, no. 4, pp 723-736, 1984
ADV601 C4C rev. 0 the wavelet kernel this block contains a set of filters and decimators that work on the image in both horizontal and vertical directions. figure 6 illustrates the filter tree structure. the filters apply carefully chosen wavelet basis functions that better correlate to the broad- band nature of images than the sinusoidal waves used in dis- crete cosine transform (dct) compression schemes (jpeg, mpeg, and h261). an advantage of wavelet-based compression is that the entire image can be filtered without being broken into sub-blocks as required in dct compression schemes. this full image filtering eliminates the block artifacts seen in dct compression and offers more graceful image degradation at high compression ratios. the availability of full image sub-band data also makes image processing, scaling, and a number of other system fea- tures possible with little or no computational overhead. the resultant filtered image is made up of components of the original image as is shown in figure 3 (a modified mallat tree). note that figure 3 shows how a component of video would be filtered, but in multiple component video luminance and color components are filtered separately. in figure 4 and figure 5 an actual image and the mallat tree (luminance only) equivalent is shown. it is important to note that while the image has been filtered or transformed into the frequency domain, no compres- sion has occurred. with the image in its filtered state, it is now ready for processing in the second block, the quantizer. block a is high pass in x and decimated by two. block b is high pass in x, high pass in y, and decimated by eight. block c is high pass in x, low pass in y, and decimated by eight. block d is low pass in x, high pass in y, and decimated by eight. block e is high pass in x, high pass in y, and decimated by 32. block f is high pass in x, low pass in y, and decimated by 32. block g is low pass in x, high pass in y, and decimated by 32. block h is high pass in x, high pass in y, and decimated by 128. block i is high pass in x, low pass in y, and decimated by 128. block j is low pass in x, high pass in y, and decimated by 128. block k is high pass in x, high pass in y, and decimated by 512. block l is high pass in x, low pass in y, and decimated by 512. block m is low pass in x, high pass in y, and decimated by 512. block n is low pass in x, low pass in y, and decimated by 512. n m l k i h j g f e c b d a figure 3. modified mallat diagram (block letters correspond to those in filter tree) understanding the structure and function of the wavelet filters and resultant product is the key to obtaining the highest perfor- mance from the ADV601. consider the following points: ? the data in all blocks (except n) for all components are high pass filtered. therefore, the mean pixel value in those b locks is typically zero and a histogram of the pixel values in these blocks will contain a single hump (laplacian distribution). ? the data in most blocks is more likely to contain zeros or strings of zeros than unfiltered image data. ? the human visual system is less sensitive to higher frequency blocks than low ones. ? attenuation of the selected blocks in luminance or color com- ponents results in control over sharpness, brightness, contrast and saturation. ? high quality filtered/decimated images can be extracted/created without computational overhead. through leverage of these key points, the ADV601 not only compresses video, but offers a host of application features. please see the applying the ADV601 section for details on getting the most out of the ADV601s sub-band coding architecture in different applications.
ADV601 C5C rev. 0 figure 5. modified mallat diagram of image figure 4. unfiltered original image (analog devices corporate offices, norwood, massachusetts)
ADV601 C6C rev. 0 low pass in x luminance and color components (each separately) stage 1 x2 indicates decimate by two in x indicates decimate by two in y indicates corresponding block letter on mallat diagram y2 high pass in x x2 block a x2 low pass in x high pass in x low pass in y high pass in y x2 x2 low pass in y high pass in y y 2 y 2 y 2 y 2 block # block b block c block d low pass in x high pass in x low pass in y high pass in y x2 x2 low pass in y high pass in y y 2 y 2 y 2 y 2 block e block f block g low pass in x high pass in x low pass in y high pass in y x2 x2 low pass in y high pass in y y 2 y 2 y 2 y 2 block h block i block j low pass in x high pass in x low pass in y high pass in y x2 x2 low pass in y high pass in y y 2 y 2 y 2 y 2 block k block l block m block n stage 2 stage 3 stage 4 stage 5 figure 6. wavelet filter tree structure
ADV601 C7C rev. 0 the programmable quantizer this block quantizes the filtered image based on the response profile of the human visual system. in general, the human eye cannot resolve high frequencies in images to the same level of accuracy as lower frequencies. through intelligent quantiza- tion of information contained within the filtered image, the ADV601 achieves compression without compromising the visual quality of the image. figure 7 shows the encode and decode data formats used by the quantizer. figure 8 shows how a typical quantization pattern applies over mallat block data. the high frequency blocks receive much larger quantization (appear darker) than the low frequency blocks (appear lighter). looking at this figure, one sees some key point concerning quantization: (1) quantization relates directly to frequency in mallat block data and (2) levels of quantization range widely from high to low frequency block. (note that the fill is based on a log formula.) the relation between actual ADV601 bin width factors and the mallat block fill pattern in figure 8 appears in table ii. 9.7 wavelet data 6.10 1/bw 15.17 data 0.5 15.0 bin number quantizer - encode mode trnc signed signed unsigned 1/bw quantizer - decode mode 8.8 bw 23.8 de-quantized wavelet data 9.7 wavelet data 15.0 bin number signed signed unsigned sat bw figure 7. programmable quantizer data flow 41 38 35 32 26 23 29 20 17 14 8 5 11 2 39 36 33 30 24 21 27 18 15 12 6 3 9 0 y component 40 37 34 31 25 22 28 19 16 13 7 4 10 1 cb component cr component low high quantization of mallat blocks figure 8. typical quantization of mallat data blocks (graphed)
ADV601 C8C rev. 0 table ii. ADV601 typical quantization of mallat data block data 1 mallat bin width reciprocal bin blocks factors width factors 39 0x007f 0x0810 40 0x009a 0x06a6 41 0x009a 0x06a6 36 0x00be 0x0564 33 0x00be 0x0564 30 0x00e4 0x047e 34 0x00e6 0x0474 35 0x00e6 0x0474 37 0x00e6 0x0474 38 0x00e6 0x0474 31 0x0114 0x03b6 32 0x0114 0x03b6 27 0x0281 0x0199 24 0x0281 0x0199 21 0x0301 0x0155 25 0x0306 0x0153 26 0x0306 0x0153 28 0x0306 0x0153 29 0x0306 0x0153 22 0x03a1 0x011a 23 0x03a1 0x011a 5 0x0a16 0x0066 18 0x0a16 0x0066 12 0x0c1a 0x0055 20 0x0c2e 0x0054 19 0x0c2e 0x0054 17 0x0c2e 0x0054 16 0x0c2e 0x0054 14 0x0e9d 0x0046 13 0x0e9d 0x0046 6 0x1ddc 0x0022 9 0x1ddc 0x0022 3 0x23d5 0x001d 11 0x2410 0x001c 10 0x2410 0x001c 8 0x2410 0x001c 7 0x2410 0x001c 5 0x2b46 0x0018 4 0x2b46 0x0018 0 0xa417 0x0006 2 0xc62b 0x0005 1 0xc62b 0x0005 note 1 the mallat block numbers, bin width factors, and reciprocal bin width factors in table ii correspond to the shading per-cent fill) of mallat blocks in figure 8. the run length coder and huffman coder this block contains two types of entropy coders that achieve mathematically loss-less compression: run-length and huffman. the run-length coder looks for long strings of zeros and replaces it with short hand symbols. table iii illustrates an example of how compression is possible. the huffman coder is a digital compressor/decompressor that can be used for compressing any type of digital data. essentially, an ideal huffman coder creates a table of the most commonly occurring code sequences (typically zero and small values near zero) and then replaces those codes with some shorthand. the ADV601 employs three fixed huffman tables; it does not create tables. the filters and the quantizer increase the number of zeros and strings of zeros, which improves the performance of the entropy coders. the higher the selected compression ratio, the more zeros and small value sequences the quantizer needs to generate. the transformed image in figure 5 shows that the filter bank concentrates zeros and small values in the higher frequency blocks. encoding vs. decoding the decoding of compressed video follows the exact path as encoding but in reverse order. there is no need to calculate bin widths during decode because the bin width is stored in the compressed image during encode. programmers model a host device configures the ADV601 using the host i/o port. the host reads from status registers and writes to control regis- ters through the host i/o port. an optional dsp can perform bin width calculations for the ADV601. the ADV601 can transfer data from component video statistics registers and receive data for bin width registers as a packet i/o using the dsp i/o port. table iv illustrates the format used to describe the ADV601s read and write registers. table iv. register description conventions register name register type (indirect or direct, read or write) and address register functional description text bit [#] or bit or bit field name and usage description bit range [high:low] 0 action or indication when bit is cleared (equals 0) 1 action or indication when bit is set (equals 1) table iii. uncompressed versus compressed data using run-length coding 0000000000000000000000000000000000000000000000000000000000000000000(uncompressed) 57 zeros (compressed)
ADV601 C9C rev. 0 indirect register address reserved reserved 0x1 0x88 0x7 ?0x7f undef 0x0 0x0983 mode control 0x2 0x000 hstart 0x3 0x3ff 0x4 0x000 0x5 0x3ff 0x6 undef 0x100 undef 0x101 undef 0x152 undef 0x153 undef 0x80 ?0xa9 undef 0xab undef 0xac undef 0xad undef 0xae undef 0xaa undef 0xb2 undef 0xb1 undef 0xb0 undef 0xaf undef 0xb3 ?0xff undef 0x0 0x4 0x8 0xc byte 3 byte 2 byte 1 0x00 undef 0x00 0x00 register address direct (externally accessible) registers indirect (internally indexed) registers {access these registers through the indirect register address and indirect register data registers} byte 0 indirect register data reserved interrupt mask / status reserved compressed data vstart hend vend fifo control reserved reserved compress ratio reserved sum of squares [0 ?41] sum of cb sum of luma sum of cr min luma max luma max cr min cr max cb min cb rbw0 bw0 rbw41 bw41 reset value figure 9. map of ADV601 direct and indirect registers
ADV601 C10C rev. 0 ADV601 register descriptions indirect address register direct (write) register byte offset 0x00. this register holds a 16-bit value (index) that selects the indirect register accessible to the host through the indirect data register. all indirect write registers are 16-bits wide. the address in this register is auto-incremented on each subsequent access of the in direct data register. this capability enhances i/o performance during modes of operation where the host is calculating bin width contr ols. in 8-bit mode, auto-increment occurs after writing to byte 1 ( be1 pin asserted) of the indirect data register; always read or write byte 0 then byte 1 when in 8-bit mode. [15:0] indirect address register, iar[15:0] . holds a 16-bit value (index) that selects the indirect register to read or write through the indirect data register (undefined at reset) [31:16] reserved (undefined read/write zero) indirect register data direct (read/write) register byte offset 0x04 this register holds a 16-bit value read or written from or to the indirect register indexed by the indirect address register. i n 8-bit mode, byte 0 is read or written first followed by byte 1. this ensures correct operation of auto-increment. [15:0] i ndirect register data, ird[15:0] . a 16-bit value read or written to the indexed indirect register. undefined at reset. [31:16] reserved (undefined read/write zero) compressed data register direct (read/write) register byte offset 0x08 this register holds a 32-bit sequence from the compressed video bit stream. this register is buffered by a 512 position, 32-bit fifo. access bytes in the following order for correct auto-increment: byte 0, byte 1, byte 2, then byte 3. for word (16-bit) accesses , ac- cess word0 (byte 0 and byte 1) then word1 (byte 2 and byte 3). for a description of the data sequence, see the compressed data stream definition section. [31:0] compressed data register, cdr[31:0] . 32-bit value containing compressed video stream data. at reset, contents undefined. interrupt mask / status register direct (read/write) register byte offset 0x0c this 16-bit register contains interrupt mask and status bits that control the state of the ADV601s hirq pin. with the seven mask bits (ie_lcode, ie_statsr, ie_fifostp, ie_fifosrq, ie_fifoerr, ie_ccirer, ie_merr); select the conditions that are ored together to determine the output of the hirq pin. six of the status bits (lcode, statsr, fifostp, merr, fifoerr, ccirer) indicate active interrupt conditions and are sticky bits that stay set until read. because sticky status bits are cleared when read, and these bits are set on the positive edge of the condition coming true, they cannot be read or tested for stable level true conditions multiple times. the fifosrq bit is not sticky. this bit can be polled to monitor for a fifosrq true condition. note: enable this monitoring by using the fifosrq bit and correctly programming dsl and esl fields within the fifo control registers. [0] ccir-656 error in ccir-656 data stream, ccirer . this read only status bit indicates the following: 0 no ccir-656 error condition, reset value 1 unrecoverable error in ccir-656 data stream (missing sync codes) [1] statistics ready, statsr . this read only status bit indicates the following: 0 no statistics ready condition, reset value (stats_r pin lo) 1 statistics ready for bw calculator (stats_r pin hi) [2] last code read, lcode . this read only status bit indicates the last compressed data word for field will be retrieved from the fifo on the next read from the host bus. 0 no last code condition, reset value (lcode pin lo) 1 next read retrieves last word for field in fifo (lcode pin hi) [3] fifo service request, fifosrq . this read only status bit indicates the following: 0 no fifo service request condition, reset value (fifo_srq pin lo) 1 fifo is nearly full (encode) or nearly empty (decode) (fifo_srq pin hi)
ADV601 C11C rev. 0 [4] fifo error, fifoerr . this condition indicates that the host has been unable to keep up with the ADV601s compressed data supply or demand requirements. if this condition occurs during encode, the data stream will not be corrupted until merr indicates that the dram is also overflowed. if this condition occurs during decode, the video output will be corrupted. if the system overflows the fifo (disregarding a fifostp condition) with too many writes in decode mode, fifoerr is asserted. this read only status bit indicates the following: 0 no fifo error condition, reset value (fifo_err pin lo) 1 fifo overflow (encode) or underflow (decode) (fifo_err pin hi) [5] fifo stop, fifostp . this condition indicates that the fifo is full in decode mode and empty in encode mode. in decode mode only, fifostp status actually behaves more conservatively than this. in decode mode, even when fifostp is indicated, there are still 32 empty dwords available in the fifo and 32 more dword writes can safely be performed. this status bit indicates the following: 0 no fifo stop condition, reset value (fifo_stp pin lo) 1 fifo empty (encode) or full (decode) (fifo_stp pin hi) [6] memory error, merr . this condition indicates that an error has occurred at the dram memory interface. this condition can be caused by a defective dram, the inability of the host to keep up with the ADV601 compressed data stream, or bit errors in the data stream. note that the ADV601 recovers from this condition without host intervention. 0 no memory error condition, reset value 1 memory error [7] reserved (always read/write zero) [8] interrupt enable on ccirer, ie_ccirer . this mask bit selects the following: 0 disable ccir-656 data error interrupt, reset value 1 enable interrupt on error in ccir-656 data [9] interrupt enable on statr, ie_statr . this mask bit selects the following: 0 disable statistics ready interrupt, reset value 1 enable interrupt on statistics ready [10] interrupt enable on lcode, ie_lcode . this mask bit selects the following: 0 disable last code read interrupt, reset value 1 enable interrupt on last code read from fifo [11] interrupt enable on fifosrq, ie_fifosrq . this mask bit selects the following: 0 disable fifo service request interrupt, reset value 1 enable interrupt on fifo service request [12] interrupt enable on fifoerr, ie_fifoerr . this mask bit selects the following: 0 disable fifo stop interrupt, reset value 1 enable interrupt on fifo stop [13] interrupt enable on fifostp, ie_fifostp . this mask bit selects the following: 0 disable fifo error interrupt, reset value 1 enable interrupt on fifo error [14] interrupt enable on merr, ie_merr . this mask bit selects the following: 0 disable memory error interrupt, reset value 1 enable interrupt on memory error [15] reserved (always read/write zero) mode control register indirect (write only) register index 0x00 this register holds configuration data for the ADV601s video interface format and controls several other video interface featu res. for more information on formats and modes, see the video interface section. bits in this register have the following functions: [3:0] video interface format, vif[3:0] . these bits select the interface format. valid settings include the following (all other values are reserved): 0x0 ccir-656 0x2 mltpx (philips) 0x3 philips, reset value 0x8 gray scale [4] vclk output divided by two, vclk2 . this bit controls the following: 0 do not divide vclk output (vclko = vclk), reset value 1 divide vclk output by two (vclko = vclk/2)
ADV601 C12C rev. 0 [5] video interface master/slave mode select, m/s . this bit selects the following: 0 slave mode video interface (external control of video timing, hsync-vsync-field are inputs), reset value 1 master mode video interface (ADV601 controls video timing, hsync-vsync are outputs) [6] video interface 525/625 (ntsc/pal) mode select, p/n . this bit selects the following: 0 525 mode video interface, reset value 1 625 mode video interface [7] video interface encode/decode mode select, e/d . this bit selects the following: 0 decode mode video interface (compressed-to-raw) 1 encode mode video interface (raw-to-compressed), reset value [8] video interface square pixel mode enable, spe . this bit selects the following: 0 disable square pixel mode video interface 1 enable square pixel mode video interface, reset value [9] video interface bipolar/unipolar color component select, buc . this bit selects the following: 0 bipolar color component mode video interface, reset value 1 unipolar color component mode video interface [10] external dsp select for bin width calculations, dsp . this bit selects the following: 0 host provides bin width calculation, reset value 1 external dsp provides bin width calculation [11] video interface software reset, swr . this bit has the following effects on ADV601 operations: 0 normal operation 1 software reset. this bit is set on hardware reset and must be cleared before the ADV601 can begin processing. ( reset value ) when this bit is set during encode, the ADV601 completes processing the current field then suspends operation until the swr bit is cleared. when this bit is set during decode, the ADV601 suspends operation immediately and does not resume operation until the swr bit is cleared. note that this bit must be set whenever any other bit in the mode register is changed. [12] hsync pin polarity, phsync . this bit has the following effects on ADV601 operations: 0 hsync is hi during blanking, reset value 1 hsync is lo during blanking (hi during active) [13] hirq pin polarity, phirq . this bit has the following effects on ADV601 operations: 0 hirq is active lo, reset value 1 hirq is active hi [15:14] reserved (always write zero) fifo control register indirect (read/write) register index 0x01 this register holds the service-request settings for the ADV601s host interface fifo, causing interrupts for the nearly full and nearly empty levels. because each register is four bits in size, and the fifo is 512 positions, the 4-bit value must be multi plied by 32 (decimal) to determine the exact value for encode service level (nearly full) and decode service level (nearly empty). the a dv601 uses these setting to determine when to generate a fifo service request related host interrupt (fifosrq bit and fifo_srq pin). [3:0] encode service level, esl[3:0] . the value in this field determines w hen the fifo is considered nearly full on enc ode; a c ondi- tion that generates a fifo service request condition in encode mode. since this register is four bits (16 states), and the fifo is 512 positions, the step size for each bit in this register is 32 positions. the following table summarizes sample states of the register and their meaning. esl interrupt when . . . 0000 disables service requests (fifo_srq never goes hi during encode) 0001 fifo has only 32 positions filled (fifo_srq when >= 32 positions are filled) 1000 fifo is 1/2 full, reset value 1111 fifo has only 32 positions empty (480 positions filled) [7:4] decode service level, dsl[7:4] . the value in this field determines when the fifo is considered nearly empty in decode; a condition that generates a fifo service request in decode mode. because this register is four bits (16 states), and the fifo is 512 positions, the step size for each bit in this register is 32 positions. the following table summarizes sample states of the register and their meaning. dsl interrupt when . . . 0000 disables service requests (fifo_srq never goes hi) 0001 fifo has only 32 positions filled (480 positions empty) 1000 fifo is 1/2 empty, reset value 1111 fifo has only 32 positions empty (fifo_srq when >= 32 positions are empty) [15:8] reserved (always write zero)
ADV601 C13C rev. 0 video area registers the area defined by the hstart, hend, vstart and vend registers is the active area that the wavelet kernel processes. video data outside the active video area is set to minimum luminance and zero chrominance (black) by the ADV601. these registers allo w cropping of the input video during compression (encode only), but do not change the image size. figure 10 shows how the video a rea registers work together. vstart vend h s tart hend zero zero zero x, y active video area 0, 0 zero zero zero zero zero max for selected video mode figure 10. video area and video area registers hstart register indirect (write only) register index 0x02 this register holds the setting for the horizontal start of the ADV601s active video area. the value in this register is usual ly set to zero, but in cases where you wish to crop incoming video it is possible to do so by changing hst. [9:0] horizontal start, hst[9:0] . 10-bit value defining the start of the active video region. (0 at reset) [15:10] reserved (always write zero) hend register indirect (write only) register index 0x03 this register holds the setting for the horizontal end of the ADV601s active video area. if the value is larger than the max s ize of the selected video mode, the ADV601 uses the max size of the selected mode for hend. [9:0] horizontal end, hen[9:0] .10-bit value defining the end of the active video region. (0x3ff at reset this value is larger than the max size of the largest video mode) [15:10] reserved (always write zero) vstart register indirect (write only) register index 0x04 this register holds the setting for the vertical start of the ADV601s active video area. the value in this register is usually set to zero unless you want to crop the active video. to vertically crop video while encoding, program the vstart and vend registers with actual video line numbers, which differ for each field. the vstart and vend contents must be updated on each field. perform this updating as part of the field-by-field bw regis- ter update process. to perform this dynamic update correctly, the update software must keep track of which field is being proce ssed next. [9:0] vertical start, vst[9:0] . 10-bit value defining the starting line of the active video region, with line numbers from 1-to-625 in pal and 1-to-525 in ntsc. (0 at reset) [15:10] reserved (always write zero) vend register indirect (write only) register index 0x05 this register holds the setting for the vertical end of the ADV601s active video area. if the value is larger than the max siz e of the selected video mode, the ADV601 uses the max size of the selected mode for vend. to vertically crop video while encoding, program the vstart and vend registers with actual video line numbers, which differ for each field. the vstart and vend contents must be updated on each field. perform this updating as part of the field-by-field bw register update process. to perform this dynamic update correctly, the update software must keep track of which field is being pro- cessed next. [9:0] vertical end, ven[9:0] . 10-bit value defining the ending line of the active video region, with line numbers from 1-to-625 in pal and 1-to-525 in ntsc. (0x3ff at resetthis value is larger than the max size of the largest video mode) [15:10] reserved (always write zero)
ADV601 C14C rev. 0 compression ratio register indirect (write only) register index 0x06 this register holds the value that is used by the dsp to control compression during encode mode. note that this register should only be used when a dsp is calculating bin widths. [7:0] compression ratio, cra[7:0] . value pa ssed to the dsp during encode operation. the 8-bit value in this field is sent to the dsp through the serial interface during dsp-assisted encode operations. cra values are zero-filled from the msb and one each is sent to the dsp as part of the packet of data on which the ratio is applied. the dsp software uses the cra value and other statistics to calculate bw controls for the ADV601s quantizer. note that the relationship between cra and the actual compression ratio is dependent on the bw control algorithm used in the dsp (undefined at reset). [15:8] reserved (always write zero) sum of squares [0C41] registers indirect (read only) register index 0x080 through 0x0a9 the sum of squares [0C41] registers hold values that correspond to the summation of values (squared) in corresponding mallat blocks [0C41]. these registers let the host or dsp read sum of squares statistics from the ADV601; using these values (with the sum of value, min value, and max value) the host or dsp can then calculate the bw and rbw values. the ADV601 indicates that the sum of squares statistics have been updated by setting (1) the statr bit and asserting the stat_r pin. read the statistics at any time. the host reads these values through the host interface or the dsp receives these values through the serial port. [15:0] sum of squares, sts[15:0] . 16-bit values [0-41] for corresponding mallat blocks [0-41] (undefined at reset). sum of square values are 16-bit codes that represent the most significant bits of values ranging from 40 bits for small blocks to 48 bits for large blocks. the 16-bit codes have the following precision: blocks precision sum of squares precision description 0C2 48.C32 48.-bits wide, left shift code by 32-bits, and zero fill 3C11 46.C30 46.-bits wide, left shift code by 30-bits, and zero fill 12C20 44.C28 44.-bits wide, left shift code by 28-bits, and zero fill 21C29 42.C26 42.-bits wide, left shift code by 26-bits, and zero fill 30C41 40.C24 40.-bits wide, left shift code by 24-bits, and zero fill if the sum of squares code were 0x0 025 for block 10, the actual value would be 0x00 0940000000; if using that same code, 0x0025, for block 30, the actual value would be 0x0025000000. [31:0] reserved (always read zero) sum of luma value register indirect (read only) register index 0x0aa the sum of luma value register lets the host or dsp read the sum of pixel values for the luma component in block 39. the host reads these values through the host interface or the dsp receives these values through the serial port. [15:0] sum of luma, sl[15:0] . 16-bit component pixel values (undefined at reset) [31:0] reserved (always read zero) sum of cb value register indirect (read only) register index 0x0ab the sum of cb value register lets the host or dsp read the sum of pixel values for the cb component in block 40. the host reads these values through the host interface or the dsp receives these values through the serial port. [15:0] sum of cb, scb[15:0] . 16-bit component pixel values (undefined at reset) [31:0] reserved (always read zero) sum of cr value register indirect (read only) register index 0x0ac the sum of cr value register lets the host or dsp read the sum of pixel values for the cr component in block 41. the host reads these values through the host interface or the dsp receives these values through the serial port. [15:0] sum of cr, scr[15:0] . 16-bit component pixel values (undefined at reset) [31:0] reserved (always read zero)
ADV601 C15C rev. 0 min luma value register indirect (read only) register index 0x0ad the min luma value register lets the host or dsp read the minimum pixel value for the luma component in the unprocessed data. the host reads these values through the host interface or the dsp receives these values through the serial port. [15:0] minimum luma, mnl[15:0] . 16-bit component pixel value (undefined at reset) [31:0] reserved (always read zero) max luma value register indirect (read only) register index 0x0ae the max luma value register lets the host or dsp read the maximum pixel value for the luma component in the unprocessed data. the host reads these values through the host interface or the dsp receives these values through the serial port. [15:0] maximum luma, mxl[15:0] . 16-bit component pixel value (undefined at reset) [31:0] reserved (always read zero) min cb value register indirect (read only) register index 0x0af the min cb value register lets the host or dsp read the minimum pixel value for the cb component in the unprocessed data. the host reads these values through the host interface or the dsp receives these values through the serial port. [15:0] minimum cb, mncb[15:0] , 16-bit component pixel value (undefined at reset) [31:0] reserved (always read zero) max cb value register indirect (read only) register index 0x0b0 the max cb value register lets the host or dsp read the maximum pixel value for the cb component in the unprocessed data. the host reads these values through the host interface or the dsp receives these values through the serial port. [15:0] maximum cb, mxcb[15:0] .16-bit component pixel value (undefined at reset) [31:0] reserved (always read zero) min cr value register indirect (read only) register index 0x0b1 the min cr value register lets the host or dsp read the minimum pixel value for the cr component in the unprocessed data. the host reads these values through the host interface or the dsp receives these values through the serial port. [15:0] minimum cr, mncr[15:0] . 16-bit component pixel value (undefined at reset) [31:0] reserved (always read zero) max cr value register indirect (read only) register index 0x0b2 the max cr value register lets the host or dsp read the maximum pixel value for the cr component in the unprocessed data. the host reads these values through the host interface or the dsp receives these values through the serial port. [15:0] maximum cr, mxcr[15:0] . 16-bit component pixel value (undefined at reset) [31:0] reserved (always read zero) bin width and reciprocal bin width registers indirect (read/write) register index 0x0100-0x0153 the rbw and bw values are calculated by the host or dsp from data in the sum of squares [0-41], sum of value, min value, and max value registers; then are written to rbw and bw registers during encode mode to control the quantizer. the host writes these values through the host interface or the dsp transmits these values through the serial port. these registers contain a 16-bit interleaved table of alternating rbw/bw (rbw-even addresses and bw-odd addresses) values as indexed on writes by address register. bin widths are 8.8, unsigned, 16-bit, fixed-point values. reciprocal bin widths are 6.10, unsigned, 16-bit, fixed-point values. operation of this register is controlled by the host driver or the dsp (84 total en tries) (undefined at reset). [15:0] bin width values, bw[15:0] [15:0] reciprocal bin width values, rbw[15:0]
ADV601 C16C rev. 0 pin function descriptions clock pins name pins i/o description vclk/xtal 2 i a single clock (vclk) or crystal input (across vclk and xtal). acceptable 50% duty cycle clock signals are as follows: ? 24.54 mhz (square pixel ntsc) ? 27 mhz (ccir601 ntsc/pal) ? 29.5 mhz (square pixel pal) if using a clock crystal, use a parallel resonant, microprocessor grade clock crystal. if using a clock input, use a ttl level input, 50% duty cycle clock with 1 ns (or less) jitter (measured rising edge to rising edge). slowly varying, low jitter clocks are acceptable; up to 5% frequency variation in 0.5 sec. vclko 1 o vclk output or vclk output divided by two. select function using mode control register. video interface pins name pins i/o description vsync 1 i or o vertical sync or vertical blank. this pin can be either an output (master mode) or an input (slave mode). the pin operates as follows: ? output (master) hi during inactive lines of video and lo otherwise ? input (slave) a hi on this input indicates inactive lines of video hsync 1 i or o horizontal sync or horizontal blank. this pin can be either an output (master mode) or an input (slave mode). the pin operates as follows: ? output (master) hi during inactive portion of video line and lo otherwise ? input (slave) a hi on this input indicates inactive portion of video line note that the polarity of this signal is modified using the mode control register. for detailed timing information, see the video interface section. field 1 i or o field # or frame sync. this pin can be either an output (master mode) or an input (slave mode). the pin operates as follows: ? output (master) hi during field1 lines of video and lo otherwise ? input (slave) a hi on this input indicates field1 lines of video enc 1 o encode or decode. this output pin indicates the coding mode of the ADV601 and operates as follows: ? lo decode mode (video interface is output) ? hi encode mode (video interface is input) note that this pin can be used to control bus enable pins for devices connected to the ADV601 video interface. vdata[19:0] 20 i/o 4:2:2 video data (8-, 10-, or 12-bit digital component video data). these pins are inputs during encode mode and outputs during decode mode. when outputs (de- code) these pins are compatible with 50 pf loads (rather than 30 pf as all other busses) to meet the high performance and large number of typical loads on this bus. the performance of these pins varies with the video interface mode set in the mode control register, see the video interface section of this data sheet for pin assignments in each mode. note that the mode control register also sets whether the color component is treated as either signed or unsigned. cref 1 i/o clock reference pin for philips interface (vclk qualifier)this pin can be either an output (master mode) or an input (slave mode). the pin operates as follows: ? output (master) hi to qualify vclk during vclk phases containing valid de- multiplexed digital video and lo otherwise ? input (slave) a hi on this input qualifies vclk during vclk phases containing valid de-multiplexed digital video.
ADV601 C17C rev. 0 dram interface pins name pins i/o description ddat[15:0] 16 i/o dram data bus. the ADV601 uses these pins for 16-bit data read/write operations to the external 256k 16-bit dram. (the operation of the dram interface is fully automatic and controlled by internal functionality of the ADV601.) these pins are compatible with 30 pf loads. dadr[8:0] 9 o dram address bus. the ADV601 uses these pins to form the multiplexed row/column address lines to the external dram. (the operation of the dram interface is fully automatic and controlled by internal functionality of the ADV601.) these pins are compatible with 30 pf loads. ras 1 o dram row address strobe. this pin is compatible with 30 pf loads. cas 1 o dram column address strobe. this pin is compatible with 30 pf loads. we 1 o dram write enable. this pin is compatible with 30 pf loads. note that the ADV601 does not have a dram oe pin. tie the drams oe pin to ground. serial port pins and timing dsp interface pins name pins i/o description txd 1 o serial transmit data. connect this pin to an optional, external dsps serial interface rxdata pin. if no dsp is present, this pin may be left unconnected. this pin is compatible with 30 pf loads. the txd pin is for serial data output from the ADV601. serial data consists of 16-bit words that are transferred most-significant-bit first. note that the mode control register must be set to indicate whether or not the external dsp is present. rxd 1 i serial receive data. connect this pin to an optional, external dsps serial interface txdata pin. if no dsp is present, tie this pin to ground. this pin is compatible with 30 pf loads. the rxd pin is for serial data input to the ADV601. serial data consists of 16- bit words that are transferred most-significant-bit first. note that the mode control register must be set to indicate whether or not the external dsp is present. tclk 1 o serial data clock (vclk/4). connect this pin to an optional, external dsps serial interface sclk pin. if no dsp is present, this pin may be left uncon- nected. this pin is compatible with 30 pf loads. the tclk pin is the serial interface clock. communication in and out of the ADV601 requires bits of data to be transmitted after a rising edge of tclk, and sampled on a falling edge of tclk. the dsp must be in external bit clock mode to use tclk correctly. the codec drives the tclk frequency at 1/4 vclk. some typi cal vclk and tclk frequencies are as follows: ? vclk tclk (= 1/4 vclk) ? 27 mhz 6.75 mhz ? 29.5 mhz 7.375 mhz ? 24.54 mhz 6.135 mhz note that the mode control register must be set to indicate whether or not the external dsp is present.
ADV601 C18C rev. 0 dsp interface pins ( continued ) name pins i/o description tf 1 o serial transmit frame sync. connect this pin to an optional, external dsps serial interface rf sync pin. if no dsp is present, leave this pin unconnected. this pin is compatible with 30 pf loads. the tf pin is the transmit frame synch. when transmitting, the ADV601 marks new frames with a hi pulse driven out on tf one serial clock period before the frame begins. whether transmitting or receiving, the synch signals may transition back from hi to lo at any time, provided the hi and lo times of tf or rf are at least one tclk period in duration. note that the dsp must be set for external framing on receive data. frame size for ADV601 serial data transmission is 52 slots of 16 bits. note that the mode control register must be set to indicate whether or not the external dsp is present. rf 1 i receive frame sync. connect this pin to an optional, external dsps serial inter- face tf sync pin. if no dsp is present, tie this pin to ground. this pin is compat- ible with 30 pf loads. the rf pin is the receive frame synch. when receiving, the ADV601 requires that the dsp marks new frames with a lo to hi transition driven in on rf one serial clock period before the frame begins. whether transmitting or receiving, the synch signals may transition back from hi to lo at any time provided the hi and lo times of tf or rf are at least one tclk period in duration. note that the dsp must be set for internal framing on transmit data. when receiving, the frame size for ADV601 serial data is 84 slots of 16 bits. note that the mode control register must be set to indicate whether or not the external dsp is present. dirq 1 o dsp interrupt. connect this pin to an optional, external dsps hardware interrupt pin (irq2). if no dsp is present, this pin may be left unconnected. this pin is compatible with 30 pf loads. the dirq pin on the ADV601 provides an optional method for signalling the dsp that a new packet of field statistics is being transmitted and can be used system- wide for signalling that a new video field has begun. because the ADV601 asserts dirq throughout statistics transmission and bin width reception, the dsps inter- rupts should be set for edge-sensitivity. note that the mode control register must be set to indicate whether or not the external dsp is present. host interface pins name pins i/o description data[31:0] 32 i/o host data bus. these pins make up a 32-bit wide host data bus. the host controls this asynchronous bus with the wr , rd , be, and cs pins to communicate with the ADV601. these pins are compatible with 30 pf loads. adr[1:0] 2 i host dword address bus. these two address pins let you address the ADV601s four directly addressable host interface registers. for an illustration of how this addressing works, see the control and write register map figure and status and read register map figure. the adr bits permit register addressing as follows: adr1 adr0 dword address byte address 0 0 0 0x00 0 1 1 0x04 1 0 2 0x08 1 1 3 0x0c be0 C be3 4 i host byte enable pins. these four input pins allow selection of which bytes in ADV601 direct and indirect registers will be accessed through the host interface; be0 least significant byte be3 most significant byte. for a 32-bit interface only, tie these pins to ground, making all bytes available.
ADV601 C19C rev. 0 host interface pins ( continued ) name pins i/o description be0 C be3 (cont.) 4 i some important notes for 8- and 16-bit interfaces are as follows: ? when using these byte enable pins, the byte order is always the lowest byte ? to the higher bytes. ? the ADV601 advances to the next 32-bit compressed data fifo location ? after the be3 pin is asserted then de-asserted (when accessing the com- ? pressed data register); so the fifo location only advances when and if the ? host reads or writes the msb of a fifo location. ? the ADV601 advances to the next 16-bit indirect register after the be1 pin ? is asserted then de-asserted; so the register selection only advances when ? and if the host reads or writes the msb of a 16-bit indirect register. cs 1 i host chip select. this pin operates as follows: ? lo qualifies host interface control signals ? hi three-states data[31:0] pins wr 1 i host write. host register writes occur on the rising edge of this signal. rd 1 i host read. host register reads occur on the low true level of this signal. ack 1 o host acknowledge. the ADV601 acknowledges completion of a host inter- face access by asserting this pin. most host interface accesses (other than the compressed data register access) result in ack being held high for at least one wait cycle, but some exceptions to that rule are as follows: ? a full fifo during decode operations causes the ADV601 to de-assert ? (drive hi) the ack pin, holding off further writes of compressed data until ? the fifo has one available location. ? an empty fifo during encode operations causes the ADV601 to de-assert (drive hi) the ack pin, holding off further reads until one location is filled. fifo_err 1 o fifo error. this condition indicates that the host has been unable to keep up with the ADV601s compressed data supply or demand requirements. if this condition occurs for a long time during encode, the data stream may be cor- rupted. if this condition occurs for a long time during decode, the video out- put may be corrupted. the state of this pin also appears in the interrupt mask/ status register. use the interrupt mask to assert a host interrupt ( hirq pin) based on the state of the fifo_err pin. this pin operates as follows: ? lo no fifo error condition (fifoerr bit lo) ? hi fifo overflow (encode) or underflow (decode) (fifoerr bit hi) fifo_srq 1 o fifo service request. this pin is an active high signal indicating that the fifo needs to be serviced by the host. (see fifo control register). the state of this pin also appears in the interrupt mask/status register. use the interrupt mask to assert a host interrupt ( hirq pin) based on the state of the fifo_srq pin. this pin operates as follows: ? lo no fifo service request condition (fifosrq bit lo) ? hi fifo needs service is nearly full (encode) or nearly empty (decode) during encode, fifo_srq is lo when the swr bit is cleared (0) and goes hi when the fifo is nearly full (see fifo control register). during decode, fifo_srq is hi when the swr bit is cleared (0), because fifo is empty, and goes lo when the fifo is filled beyond the nearly empty condition (see fifo control register).
ADV601 C20C rev. 0 host interface pins ( continued ) name pins i/o description fifo_stp 1 o fifo stop. this condition indicates that the host is far ahead of the ADV601s compressed data supply or demand requirements. the state of this pin also appears in the interrupt mask/status register. use the interrupt mask to assert a host inter- rupt ( hirq pin) based on the state of the fifo_stp pin. this pin operates as follows: ? lo no fifo stop condition (fifostp bit lo) ? hi fifo empty (encode) or full (decode) (fifostp bit hi) stats_r 1 o statistics ready. this pin indicates the wavelet statistics (contents of sum of squares, sum of value, min value, max value registers) have been updated and are ready for the bin width calculator to read them from the host or dsp interface. the frequency of this interrupt will be equal to the field rate. the state of this pin also appears in the interrupt mask/status register. use the interrupt mask to assert a host interrupt ( hirq pin) based on the state of the stats_r pin. this pin operates as follows: ? lo no statistics ready condition (statsr bit lo) ? hi statistics ready for bw calculator (statsr bit hi) lcode 1 o last compressed data (for field). this bit indicates the last compressed data word for field will be retrieved from the fifo on the next read from the host bus. the frequency of this interrupt is similar to the field rate, but varies depending on compression and host response. the state of this pin also appears in the interrupt mask/status register. use the interrupt mask to assert a host interrupt ( hirq pin) based on the state of the lcode pin. this pin operates as follows: ? lo no last code condition (lcode bit lo) ? hi last data word for field has been read from fifo (lcode bit hi) hirq 1 o host interrupt request. this pin indicates an interrupt request to the host. the interrupt mask/status register can select conditions for this interrupt based on any or all of the following: fifostp, fifosrq, fifoerr, lcode, statr or ccir656 unrecoverable error. note that the polarity of the hirq pin can be modified using the mode control register. reset 1 i ADV601 chip reset. asserting this pin returns all registers to reset state. note that the ADV601 must be reset at least once after power-up with this active low signal input. for more information on reset, see the swr bit description. power supply pins name pins i/o description gnd 28 i ground vdd 21 i +5 v dc digital power
ADV601 C21C rev. 0 video interface the ADV601 video interface supports a wide range of compo- nent digital video (d1) interfaces in both compression (input) and decompression (output) modes. these digital video inter- faces include support for the following: ? philips 4:2:2 ? multiplexed philips 4:2:2 ? ccir-656/smpte125m - international standard ? closed captioning and vitc decode and encode video interface master and slave modes allow for the generation or receiving of synchronization and blanking signals. definitions for the different formats can be found later in this section. for recommended connections to popular video decoders and encod ers, see the connecting the ADV601 to popular video decoders and encoders section. a complete list of supported video interfaces and sampling rates is included in table v. table v. component digital video interfaces nominal bits/ color date name component space sampling rate (mhz) i/f width ccir-656 8 or 10 ycrcb 4:2:2 27 8 or 10 multiplex philips 8 or 10 yuv 4:2:2 <= 29.5 8 or 10 philips 8 or 10 yuv 4:2:2 12.27-14.79 16 or 20 gray scale 8, 10, or 12 luma 4:0:0 12.27-14.79 8, 10 or 12 internally, the video interface translates all video formats to one consistent format to be passed to the wavelet kernel. this con- sistent internal video standard is 4:2:2 at 16 bits accuracy. vitc and closed captioning support the video interface also supports the direct loss-less extraction of 90-bit vitc codes during encode and the insertion of vitc codes during decode. closed captioning data (found on active video line 21) is handled just as normal active video on an active scan line. as a result, no special dedicated support is necessary for closed captioning. the data rates for closed captioning data are low enough to ensure robust operation of this mechanism at compression ratios of 50:1 and higher. note that you must include video line 21 in the ADV601s defined active video area for closed caption support. 27 mhz nominal sampling there is one clock input (vclk) to support all internal process- ing elements. this is a 50% duty cycle signal and must be syn- chronous to the video data. internally this clock is doubled using a phase locked loop to provide for a 54 mhz internal processing clock. the clock interface is a two pin interface that allows a crystal oscillator to be tied across the pins or a clock oscillator to drive one pin. the nominal clock rate for the video interface is 27 mhz. note that the ADV601 also supports pixel rates ranging from 12.27 mhz to 14.75 mhz (vclk rates from 24.54 mhz to 29.5 mhz). video interface and modes in all, there are seven programmable features that configure the video interface. these are: ? encode-decode control in addition to determining what functions the internal pro- cessing elements must perform, this control determines the direction of the video interface. in decode mode, the video interface outputs data. in encode mode, the interface receives data. the state of the control is reflected on the enc pin. this pin can be used as an enable input by external line driv- ers. this control is maintained by the host processor. ? master-slave control this control determines whether the ADV601 generates or receives the vsync, hsync, cref, and field signals. in master mode, the ADV601 generates these signals for external hardware synchronization. in slave mode, the ADV601 re- ceives these signals. note that some video formats require the ADV601 to operate in slave mode only. this control is main- tained by the host processor. ? 525-625 (ntsc-pal) control this control determines whether the ADV601 is operating on 525/ntsc video or 625/pal video. this information is used when the ADV601 is in master and decode modes so that the ADV601 knows where and when to generate the hsync, vsync, and field pulses as well as when to insert the sav and eav time codes (for ccir-656 only) in the data stream. this control is maintained by the host processor. table vi shows how the 525-625 control and square pixel control in the mode control register work together. table vi. square pixel control, 525-625 control, and video formats square max max pixel 525-625 horizontal field control control size size ntsc-pal 0 0 720 243 ccir-601 ntsc 0 1 720 288 ccir-601 pal 1 0 640 243 square pixel ntsc 1 1 768 288 square pixel pal ? square pixel control this control determines whether the ADV601 is operating on square pixel video. for square pixel ntsc, the 525-625 control is set to 525 and the square pixel control is asserted. for square pixel pal, the 525-625 control is set to 625 and the square pixel control is asserted. also note that the vclk input differs for ntsc and pal video. ? bipolar/unipolar color component this mode determines whether offsets are used on color com- ponents. in philips mode, this control is usually set to bipo- lar, since the color components are normal twos-compliment signed values. in ccir-656 mode, this control is set to uni- polar, since the color components are offset by 128. note that it is likely the ADV601 will function if this control is in the wrong state, but compression performance will be degraded. it is important to set this bit correctly.
ADV601 C22C rev. 0 ? active area control four registers hstart (horizontal start), hend (horizon- tal end), vstart (vertical start) and vend (vertical end) determine the active video area. the maximum active video area is 768 by 288 pixels for a single field. ? video format this control determines the video format that is supported. in general, the goal of the various video formats is to support glueless interfaces to the wide variety of video formats periph- eral components expect. this control is maintained by the host processor. table vii shows a synopsis of the supported video formats. definitions of each format can be found later in this section. for video interface pins descriptions, see the pin function descriptions. table vii. component digital video formats nominal bit/ color data rate master/ format name component space sampling (mhz) slave i/f width number ccir-656 8 or 10 ycrcb 4:2:2 27 master 8 or 10 0x0 multiplex philips 8 or 10 yuv 4:2:2 <=29.5 either 8 or 10 0x2 philips 8 or 10 yuv 4:2:2 29.5 either 8 or 10 0x3 gray scale 8, 10 or 12 luma 4:0:0 13.5 either 8, 10, or 12 0x8 clocks and strobes all video data, whether 1 or 2 lanes of video are used, are synchronous to the video clock (vclk). the rising edge of vclk is used to clock all data into the ADV601. synchronization and blanking pins three signals, which can be configured as inputs or outputs, are used for video frame and field horizontal synchronization and blanking. these signals are vsync, hsync, and field. vdata pins functions with differing video interface formats the functionality of the video interface pins depends on the current video format. table viii defines how video data pins are used for the various formats. table viii. vdata[0:19] pin functions under ccir-656, multiplex philips, philips, and gray scale video interfaces 1 vdata[19:0] pins ccir-656 multiplex philips philips gray scale 19 n/c n/c chrominance data9 n/c 18 n/c n/c chrominance data8 n/c 17 n/c n/c chrominance data7 n/c 16 n/c n/c chrominance data6 n/c 15 n/c n/c chrominance data5 n/c 14 n/c n/c chrominance data4 n/c 13 n/c n/c chrominance data3 n/c 12 n/c n/c chrominance data2 n/c 11 n/c n/c chrominance data1 data11 10 n/c n/c chrominance data0 data10 9 data9 data9 luminance data9 data9 8 data8 data8 luminance data8 data8 7 data7 data7 luminance data7 data7 6 data6 data6 luminance data6 data6 5 data5 data5 luminance data5 data5 4 data4 data4 luminance data4 data4 3 data3 data3 luminance data3 data3 2 data2 data2 luminance data2 data2 1 data1 data1 luminance data1 data1 0 data0 data0 luminance data0 data0 note 1 italic font for an entry in this table indicates that the use of the pin is optional (i.e., bits per component greater than 8 ) . note that unused optional pins should be tied through a resistor to ground. also, n/c for an entry in this table indicates that the pin is never used for a particular video format. this nomenclature is consistent with the video format descriptions found later in this section. note that data0 is always the lsb for all formats.
ADV601 C23C rev. 0 video formatsccir-656 the ADV601 supports a glueless video interface to ccir-656 devices when the video format is programmed to ccir-656 mode. ccir-656 requires that 4:2:2 data (8 or 10 bits per com- ponent) be multiplexed and transmitted over a single 8- or 10-bit physical interface. a 27 mhz clock is transmitted along with the data. this clock is synchronous with the data. the color space of ccir-656 is ycrcb. when in master mode, the ccir-656 mode does not require any external synchronization or blanking signals to accompany digital video. instead, ccir-656 includes special time codes in the stream syntax that define horizontal blanking periods, verti- cal blanking periods, and field synchronization (horizontal and vertical synchronization information can be derived). these time codes are called end-of-active-video (eav) and start-of- active-video (sav). each line of video has one eav and one sav time code. eav and sav have three bits of embedded information to define hsync, vsync and field information as well as error detection and correction bits. vclk is driven with a 27 mhz, 50% duty cycle clock which is synchronous with the video data. video data is clocked on the rising edge of the vclk signal. when decoding, the vclk signal is typically transmitted along with video data in the ccir-656 physical interface. electrically, ccir-656 specifies differential ecl levels to be used for all interfaces. the ADV601, however, only supports unipolar, ttl logic thresholds. systems designs that interface to strictly conforming ccir-656 devices (especially when inter- facing over long cable distances) must include ecl level shifters and line drivers. the functionality of hsync, vsync and field pins is dependent on three programmable modes of the ADV601: master-slave control, encode-decode control and 525-625 control. table ix summarizes the functionality of these pins in various modes. table ix. ccir-656 master and slave modes hsync, vsync, and field functionality hsync, vsync and field master mode (hsync, vsync slave mode (hsync, vsync functionality for ccir-656 and field are outputs) and field are inputs) encode mode (video data is input pins are driven to reflect the states of the undefineduse master mode to the chip) received time codes: eav and sav. this functionality is independent of the state of the 525-625 mode control. an encoder is most likely to be in master mode. decode mode (video data is output pins are output to the precise timing definitions undefineduse master mode from the chip) for ccir-656 interfaces. the state of the pins reflect the state of the eav and sav timing codes that are generated in the output video data. these definitions are different for 525 and 625 line systems. the ADV601 completely manages the generation and timing of these pins. video formatsphilips video philips video format requires 4:2:2 data (8 bits per component) be transmitted over a two lane 16-bit physical interface. a 27 mhz clock is transmitted along with the data. this clock is synchronous with the data and is running at twice the transfer rate of the interface. the color space is yuv. vclk is driven with a 27 mhz 50% duty cycle clock, which is synchronous with the video data. philips video format requires external synchroni- zation and blanking signals to accompany digital v ideo. these signals are vsync, hsync, cref and field. in general, when the ADV601 is configured as an encoder, these signals will all be inputs. when the ADV601 is configured as a decoder, these signals will be outputs. there are special cases for this described in table x. the functionality of hsync, vsync, and field pins is depen- dent on three programmable modes of the ADV601: master-slave control, encode-decode control, and 525-625 control. table x summarizes the functionality of these pins in various modes. table x. philips video master and slave modes hsync, vsync and field functionality hsync, vsync and field master mode (hsync, vsync, slave mode (hsync, vsync, functionality for philips video cref and field are outputs) cref and field are inputs) encode mode (video data is input the ADV601 completely manages the generation these pins are used to control the to the chip) and timing of these pins. the device driving the blanking of video and sequencing ADV601 video interface must use these outputs to of the ysc, csc, and lc counters. remain in sync with the ADV601. it is expected that this combination of modes would not be used frequently. decode mode (video data is output the ADV601 completely manages the these pins are used to control the from the chip) generation and timing of these pins. blanking of video and sequencing of the ysc, csc, and lc counters.
ADV601 C24C rev. 0 video formats multiplexed philips video the ADV601 supports a hybrid mode of operation that is a cross between standard dual lane philips and single lane ccir-656. in this mode, video data is multiplexed in the same fashion in ccir-656, but the values 0 and 255 are not reserved as signaling values. in- stead, external hsync and vsync pins are used for signaling and video synchronization. vclk may range up to 29.5 mhz. vclk is driven with up to a 29.5 mhz 50% duty cycle clock synchronous with the video data. video data is clocked on the rising edge of the vclk signal. the functionality of hsync, vsync, and field pins is dependent on three programmable modes of the ADV601: master-slave control, encode-decode control, and 525-625 control. table xi summarizes the func- tionality of these pins in various modes. table xi. philips multiplexed video master and slave modes hsync, vsync, and field functionality hsync, vsync and field functionality for multiplexed master mode (hsync, vsync slave mode (hsync, vsync philips and field are outputs) and field are inputs) encode mode (video data is input the ADV601 completely manages the generation and these pins are used to control the to the chip) timing of these pins. the device driving the ADV601 blanking of video and sequencing. video interface must use these outputs to remain in sync with the ADV601. it is expected that this com- bination of modes would not be used frequently. decode mode (video data is output the ADV601 completely manages the generation these pins are used to control the from the chip) and timing of these pins. blanking of video and sequencing. video formats gray scale video the gray scale video format requires 4:0:0 data (up to 12 bits) be transmitted over a one lane 8- to 12-bit physical interface. a video clock (typically 27 mhz) is transmitted along with the data. this clock is synchronous with the data and runs at twice the transfer rate of the interface. the color space is gray scale. because the ADV601 internal processing is not dependent on color space, gray scale data is processed in the same manner as data in other color spaces. vclk is driven with a 24.54 mhzC29.5 mhz, 50% duty cycle clock which is synchronous with the video data. video data is clocked on the second rising edge of the vclk signal. these video formats require external synchronization and blanking signals to accompany digital video. these signals are vsync, hsync, and field. in general, when the ADV601 is configured as an encoder, these signals will all be inputs. when the ADV601 is configured as a decoder, these signals will be outputs. there are special cases for this format described in table xii. table xii. gray scale video master and slave modes hsync, vsync and field functionality hsync, vsync, and field functionality for gray scale master mode (hsync, vsync, slave mode (hsync, vsync, format cref and field are outputs) cref and field are inputs) encode mode (video data is input the ADV601 completely manages the generation and these pins are used to control the to the chip) timing of these pins. the device driving the ADV601 blanking of video and sequencing. video interface must use these outputs to remain in sync with the ADV601. it is expected that this com- bination of modes would not be used frequently. decode mode (video data is output the ADV601 completely manages the generation these pins are used to control the from the chip) and timing of these pins. blanking of video and sequencing. video formatsreferences for more information on video interface standards, see the following reference texts. ? for the definition of ccir-601: 1992 C ccir recommendations rbt series broadcasting service (television) rec. 601-3 encoding parameters of digital television for studios , page 35, september 15, 1992. ? for the definition of ccir-656: 1992 C ccir recommendations rbt series broadcasting service (television) rec. 656-1 interfaces for digital component video signals in 525 and 626 line television systems operating at the 4:2:2 level of rec. 601 , page 46, september 15, 1992.
ADV601 C25C rev. 0 host interface the ADV601 host interface is a high performance interface that passes all command and real-time compressed video data be- tween the host and codec. a 512 position by 32-bit wide, bidi- rectional fifo buffer passes compressed video data to and from the host. the host interface is capable of burst transfer rates of up to 132 million bytes per second (4 33 mhz). for host inter- face pins descriptions, see the pin function descriptions section. for host int erface timing information, see the host interface timing section. dsp interface the dsp interface is used to interface with an external dsp. during encode, the dsp provides the ADV601 with bin width calculation support (in applications where the host processor is not providing bin width support). when the host provides bin width calculation support, the dsp is not required. during decode, the dsp is not needed. this interface is capable of glueless connection with all of analog devices dsp serial ports. the dsp interface passes the following information (in encode only): ? wavelet statistics calculated by the ADV601 output to the dsp ? compression ratio output to the dsp ? quantizer control information (i.e., bin width and reciprocal bin width factors) input from the dsp figure 11 shows how to connect and ADV601 with a dsp. other figures that describe ADV601-to-dsp connections in- clude figures 15 and 16. adsp-21xx (serial port) tfs0 td0 rfs0 rd0 sclk0 rf rxdata tf txdata tclk dirq irq2 ADV601 (serial interface) figure 11. ADV601-to-adsp-2105 (dsp) serial interface connections ADV601 serial transfer overview the video statistics that the ADV601 calculates and sends to the dsp for quantizer control calculations are as follows: ? minimum pixel value per field per component ? maximum pixel value per field per component ? sum of pixel values per field per component ? sum of squares of pixel values per mallat block per component ? compression ratio (programmed by the host) per field the ADV601 video codec can transmit video field statistics and receive bin width values through its serial port when connected to a dsp (an adsp-21xx family dsp whose sport is set for continuous rx/tx normal framing mode). this dsp-compatible serial port has six pins: rxd, txd, tclk, tf, rf and dirq. for dsp interface pins descri ptions, see pin func tion descriptions. ADV601 serial transfer process on a field by field basis, the ADV601 transfers video statistics to the dsp and then receives bin widths from the dsp. the tim- ing of the data flow appears in figure 41. the steps for the data flow are as follows: 1 . the ADV601 asserts dirq to alert the dsp that video sta- tistics are ready for the first field. 2 . the ADV601 transfers the statistics packet of fifty-two 16-bit words on the txd pin using a pulse on tf to indicate the beginning, most-significant-bit first, of each word. the video statistics transfer for the first field occurs during the first part of the next field. the address order of register transfer is as follows: 0x06 (compression ratio), 0x80-0xa9 (sum of squares [0-41]), 0xaa (sum of luma), 0xab (sum of cb), 0xac (sum of cr), 0xad (min luma), 0xae (max luma), 0xaf (min cb), 0xb0 (max cb), 0xb1 (min cr), and 0xb2 (max cr). 3 . the dsp calculates bin width and reciprocal bin width val- ues for each mallat block, using the video statistics. 4 . the dsp transfers the bin width and reciprocal bin width packet of eighty-four 16-bit words on the ADV601s rxd pin using a pulse on the ADV601s rf to indicate the begin- ning, most-significant-bit first, of each word. the bin width and reciprocal bin width transfer for the first field occurs before the end of the next field. the address order of register transfer is as follows: 0x100 (reciprocal bin width 0), 0x101 (bin width 0), . . . , 0x152 (reciprocal bin width 41), 0x153 (bin width 41). 5 . the ADV601 de-asserts dirq after receiving the dsps bin width and reciprocal bin width packet and keeps dirq de- asserted until the video statistics packet for the next field is ready for transfer. ADV601 serial transfer implications this serial i/o process between the ADV601 and the dsp con- tinues for all fields of video. some important implications that stem from this process are as follows: ? because the ADV601 asserts dirq near the beginning of each video field, the signal can be useful for synchronizing system wide operations that need to key on the beginning of each video field. ? because failures in serial i/o to the dsp are possible, the dsp software times out if the video statistics packet does not arrive within a specific time window and returns a default set of bin width values to the ADV601. ? because failures in serial i/o from the dsp are possible, the ADV601 uses the bin width values from the previous field if the dsp does not return new bin with values within a specific time window.
ADV601 C26C rev. 0 dram manager the dram manager provides a sorting and reordering func- tion on the sub-band coded data between the wavelet kernel and the programmable quantizer. the dram manager pro- vides a pipeline delay stage to the ADV601. this pipeline lets the ADV601 extract current field image statistics (min/max pixel values, sum of pixel values, and sum of squares) used in the calculation of bin widths and re-order wavelet transform data. the use of current field statistics in the bin width calcula- tion results in precise control over the compressed bit rate. the dram manager manages the entire operation and refresh of the dram. the interface between the ADV601 dram manager and dram is designed to be transparent to the user. the ADV601 dram pins should be connected to the dram as called out in the pin function descriptions section. the ADV601 requires one 256k word by 16-bit, 60 ns dram. the following is a selected list of manufacturers and part numbers. all parts can be used with the ADV601 at all vclk rates except where noted. any dram used with the ADV601 must meet the mini- mum specifications outlined for the hyper mode drams listed in table xiii. for dram interface pins descriptions, see the pin function descriptions. table xiii. ADV601 compatible drams manufacturer part number notes toshiba tc514265dj/dz/dft-60 none nec m pd424210ale-60 none nec m pd42s4210ale-60 cbr self refresh feature of this prod- uct is not needed by the ADV601. hitachi hm514265cj-60 none compressed data-stream definition through its host interface the ADV601 outputs (during en- code) and receives (during decode) compressed digital video data. this stream of data passing between the ADV601 and the host is hierarchically structured and broken up into blocks of data as shown in figure 12. table iv shows pseudo code for a video data transfer that matches the transfer order shown in figure 12 and uses the code names shown in table xvi. the blocks of data listed in figure 12 correspond to wavelet com- pressed s ections of each field illustrated in figure 13 as a modified mallat diagram. (continuous stream of frames) time frame (n) frame (n + 1) frame (n + 2) frame (n + m) field 2 sequence field 1 sequence field sequence structure first block sequence complete block sequence vertical interface time code start of field 1 or 2 code first block sequence structure data for mallat block 6 bin width quantizer code sub-band type code complete block sequence order (stream of mallat block sequences) sequence for mallat block 3 sequence for mallat block 20 sequence for mallat block 9 complete block (individual) sequence structure data for mallat block bin width quantizer code start of block code figure 12. hierarchical structure of wavelet compressed frame data (data block order)
ADV601 C27C rev. 0 table xiv. pseudo-code describing a sequence of video fields complete sequence: frame n; field 1 frame n; field 2 frame n+1; field 1 frame n+1; field 2 (field sequences) frame n+m; field 1 frame n+m; field 2 #eos required in decode to let the ADV601 know the sequence of fields is complete. field 1 sequence: #sof1 field 2 sequence: #sof2 first block sequence: complete block sequence: ... (block sequences) ... block sequence: #sob1, #sob2, #sob3, #sob4 or #sob5
ADV601 C28C rev. 0 6 3 0 39 36 33 30 24 21 27 18 15 12 9 40 37 34 31 25 22 28 19 16 13 7 4 10 1 26 23 29 20 17 14 8 5 11 2 41 38 35 32 y component cb component cr component figure 13. block order of wavelet compressed field data (modified mallat diagram) in general, a frame of data is made up of odd and even fields as shown in figure 12. each field sequence is made up of a first block sequence and a complete block sequence. the first block sequence is separate from the complete block sequence. the complete block sequence contains the remaining 41 block sequences (see block numbering in figure 13). each block sequence contains a start of block delimiter, bin width for the block and actual encoder data for the block. a pseudo code bit stream example for one complete field of video is shown in table xv. a pseudo code bit stream example for one sequence of fields is shown in table xvi. an example listing of a field of video in ADV601 bitstream format appears in table xviii.
ADV601 C29C rev. 0 table xv. pseudo-code of compressed video data bitstream for one field of video block sequence data for mallat block number . . . #sofn n indicates field 1 or 2 huff_data indicates mallat block 6 data a typical bin width (bw) factor for this block is 0x1ddc #sob4 mallat block 9 datatypical bw = 0x1ddc #sob3 mallat block 20 datatypical bw = 0x0c2e #sob3 mallat block 22 datatypical bw = 0x03a1 #sob3 mallat block 19 datatypical bw = 0x0c2e #sob3 mallat block 23 datatypical bw = 0x03a1 #sob3 mallat block 17 datatypical bw = 0x0c2e #sob3 mallat block 25 data typical bw = 0x0306 #sob3 mallat block 16 datatypical bw = 0x0c2e #sob3 mallat block 26 data typical bw = 0x0306 #sob3 mallat block 14 datatypical bw = 0x0e9d #sob3 mallat block 28 datatypical bw = 0x0306 #sob3 mallat block 13 datatypical bw = 0x0e9d #sob3 mallat block 29 datatypical bw = 0x0306 #sob1 mallat block 11 datatypical bw = 0x2410 #sob1 mallat block 31 datatypical bw = 0x0114 #sob3 mallat block 10 datatypical bw = 0x2410 #sob1 mallat block 32 datatypical bw = 0x0114 #sob3 mallat block 8 datatypical bw = 0x2410 #sob1 mallat block 34 datatypical bw = 0x00e5 #sob3 mallat block 7 datatypical bw = 0x2410 #sob1 mallat block 35 datatypical bw = 0x00e6 #sob3 mallat block 5 datatypical bw = 0x2b46 #sob1 mallat block 37 datatypical bw = 0x00e6 #sob3 mallat block 4 datatypical bw = 0x2b46 #sob1 mallat block 38 datatypical bw = 0x00e6 #sob3 mallat block 2 datatypical bw = 0xc62b #sob1 mallat block 40 datatypical bw = 0x009a #sob3 mallat block 1 datatypical bw = 0xc62b #sob1 mallat block 41 datatypical bw = 0x009a #sob4 mallat block 0 datatypical bw = 0xa417 #sob2 mallat block 39 datatypical bw = 0x007f #sob4 mallat block 12 datatypical bw = 0x0c1a #sob2 mallat block 36 datatypical bw = 0x00be #sob4 mallat block 15 datatypical bw = 0x0a16 #sob2 mallat block 33 datatypical bw = 0x00be #sob4 mallat block 18 data typical bw = 0x0a16 #sob2 mallat block 30 data typical bw = 0x00e4 #sob2 mallat block 21 datatypical bw = 0x0301 #sob2 mallat block 27 datatypical bw = 0x0281 #sob2 mallat block 24 datatypical bw = 0x0281 #sob4 mallat block 3 datatypical bw = 0x23d5 table xvi specifies the mallat block transfer order and associated start of block (sob) codes. any of these sob codes can be replaced with an sob#5 code for a zero data block. table xvi. pseudo-code of compressed video data bitstream for one sequence of video fields block sequence data for mallat block number #sof1 /* mallat block 6 data */ ... (41 #sobn blocks) #sof2 /* mallat block 6 data */ ... (41 #sobn blocks) . (any number of fields in sequence) #eos /* required in decode to end field sequence*/
ADV601 C30C rev. 0 table xvii. ADV601 field and block delimiters (codes) code name code description (align all #delimiter codes to 32-bit boundaries) #sof1 0xffffffff40000000 start of field delimiter identifies field1 data. #sof1 resets the huffman decoder and is sufficient on its own to reset the processing of the chip during decode. please note that this code or #sof2 are the only delimiters necessary between adjacent fields. #sof1 operates identically to #sof2 except that during decode it can be used to differentiate between field1 and field2 in the generation of the field signal (master mode) and/or sav/eav codes for ccir-656 modes. #sof2 0xffffffff41000000 start of field delimiter identifies field2 data. #sof resets the huffman decoder and is sufficient on its own to reset the processing of the chip during decode. please note that this code or #sof1 are the only delimiters necessary between adjacent fields. #sof2 operates identically to #sof1 except that during decode it can be used to differentiate between field2 and field1 in the generation of the field signal (master mode) and/or sav/eav codes for ccir-656 modes. (96 bits) this is a 12-byte string of data extracted by the video interface during encode opera- tions and inserted by the video interface into the video data during decode operations. the data content is 90 bits in length. for a complete description of vitc format, see pages 175-178 of video demystified: a handbook for the digital engineer (listed in references section). 0x81 this is an 8-bit delimiter-less type code for the first sub-band block of wavelet data. (model 1 chroma) 0x82 this is an 8-bit delimiter-less type code for the first sub-band block of wavelet data. (model 1 luma) 0x83 this is an 8-bit delimiter-less type code for the first sub-band block of wavelet data. (model 2 chroma) 0x84 this is an 8-bit delimiter-less type code for the first sub-band block of wavelet data. (model 2 luma) #sob1 0xffffffff81 start of block delimiter identifies the start of huffman coded sub-band data. this #sob2 0xffffffff82 delimiter will reset the huffman decoder if a system ever experiences bit errors or gets #sob3 0xffffffff83 out of sync. the order of blocks in the frame is fixed and therefore implied in the bit #sob4 0xffffffff84 stream and no unique #sob delimiters are needed per block. there are 41 #sob #sob5 0xffffffff8f delimiters and associated bw and huffman data within a field. #sob1 is differenti- ated from #sob2, #sob3 and #sob4 in that they indicate which model and huffman table was used in the run length coder for the particular block: #sob1 model 1 chroma #sob2 model 1 luma #sob3 model 2 chroma #sob4 model 2 luma #sob5 zero data block. all data after this delimiter and before the next start of block delimiter is ignored (if present at all) and assumed zero including the bw value.
ADV601 C31C rev. 0 table xviii. ADV601 field and block delimiters (codes) code name code description (align all #delimiter codes to 32-bit boundaries) ( continued ) (16 bits, 8.8) this data code is not entropy coded, is always 16 bits in length and defines the bin width quantizer control used on all data in the block sub-band. during decode, this value is used by the quantizer. if this value is set to zero during decode, all huffman data is presumed to be zero and is ignored, but must be included. during encode, this value is calculated by the external dsp and is inserted into the bit stream by the ADV601 (this value is not used by the quantizer). another value calculated by the dsp, 1/bw is actually used by the quantizer during encode. (modulo 32) this data is the quantized and entropy coded block sub-band data. the datas length is dependent on block size and entropy coding so it is therefore variable in length. this field is filled with 1s making it modulo 32 bits in length. any huffman decode process can be interrupted and reset by any unexpectedly received # delimiter following a bit error or synchronization problem. #eos 0xffffffffc0ffffff the host sends the #eos (end of sequence) to the ADV601 during decode after the last field in a sequence to indicate that the field sequence is complete. the ADV601 does not append this code to the end of encoded field sequences; it must be added by the host. table xix. video data bitstream for one field in a video sequence 1 ffff ffff 40 00 0000 0000 0000 0000 0000 0000 0000 8400 00ff df0d 8eff ffff ffff 84 00 00ff df0c daff ffff ffff 83 00 00ff 609f ffff ffff ffff 83 00 00fe c5af ffff ffff ffff 83 00 00ff 609f ffff ffff ffff 83 00 00fe c5af ffff ffff ffff 83 00 00ff 609f ffff ffff ffff 83 00 00fe c70f ffff ffff ffff 83 00 00ff 609f ffff ffff ffff 83 00 00fe c70f ffff ffff ffff 83 00 00ff 609f ffff ffff ffff 83 00 00fe c78f ffff ffff ffff 83 00 00ff 609f ffff ffff ffff 83 00 00fe c78f ffff ffff ffff 83 00 00ff 6894 3fff ffff ffff 81 1d 40f0 90ff ffff ffff ffff 83 00 00ff 6894 3fff ffff ffff 81 1d 40f0 90ff ffff ffff ffff 83 00 00ff 68aa bfff ffff ffff 81 16 80f0 9bff ffff ffff ffff 83 00 00ff 68aa bfff ffff ffff 81 16 80f0 9bff ffff ffff ffff 83 00 00ff 6894 3fff ffff ffff 81 16 80f0 9fff ffff ffff ffff 83 00 00ff 6894 3fff ffff ffff 81 16 80f0 9fff ffff ffff ffff 83 00 00ff fe62 a2ff ffff ffff 81 03 e6e9 d74d 75d7 5d75 d75a f8f9 74eb d7af 5ebd 7af5 ebf0 f8f8 f979 7979 7979 7979 79fd 5f5f c7e3 f1f8 fc7e 3f1f 8fc7 e5fa ff6f d5f6 7d9f 67d9 f67d 9f67 d9f6 7edf abec f87c 3e1f 0f87 c3e1 f0f8 fd9f 1f1f 2f2f 2f2f 2f2f 2f2f 2f1f 2ebd 7af5 ebd7 ae9d 74e9 a56d 6b5a d6b5 a2b0 d249 24a5 ce36 db6d b6db 6db7 c6fd fd3d 3d3d 3d3d 3d3d 3d3b 7a7b fbfb fbfb fbfb fbfb fcfd bdfe dfb7 edfb 7eef bbee fbbe dfbb dbe7 f6fd ff7f dff7 fdff 7fdf f7fd feff 3fbb effb feff bfef fbfe ffbf efff ffff ffff ffff 83 00 00ff fe62 a2ff ffff ffff 81 03 e6fd bfab f9bf 57d5 f2eb 18f4 f9fd ffb7 f5ff 3feb fafc 7431 e9f4 fbff 77eb fd3f b3ec f2d5 efeb f6fe 1fbb f67e afdb f0f3 aaed edf7 fe3f 57ed fd7f bbe3 d2d3 dfe7 f87e 5f57 eefd 9fbb e5d6 2fdf e7f8 7eff abf7 7ecf ddf2 eb17 eff3 fc3f 7fd5 fbbf 67ee f975 8bf7 f9fe 1fbf eafd dfb3 f77c bac5 fbfc ff0f dff5 7eef d9fb be5d 62fd fe7f 87ef fabf 77ec fddf 2eb1 7eff 3fc3 f7fd 5fbb f67e ef97 58bf 7f9f e1fb feaf ddfb 3f77 cbac 5fbf cff0 fdff 57ee fd9f bbe5 d62f dfe7 f87e ffaf f77e cfab e5d6 2fe9 f3fc 7f7f d9f5 7edf abc7 431e 9f4f c7f8 7fff ffff ffff ffff 84 00 00ff dfb7 c5ff df0d 7fff ffff ffff 82 02 9afc 3eff b7e9 ede9 e9e9 e9e9 e9e9 e9e9 e9e9 e9e9 e9e9 e9e9 dbef fbbe 9efe 9dbb 76ed dbb7 6edd bb76 eddb b76e ddb7 fbbe df9f af6d b6db 6db6 db6d b6db 6db6 db6d aff6 fd3d bbed 7bde f7bd ef7b def7 bdef 75f4 f7f4 dee9 2492 4924 924c fa7b 77da 6991 f4f7 efb4 d323 e9ed df69 a647 d3db bed3 4c8f a7b7 7da6 991f 4f7e fb4d 323e 9edd f69a 647d 3dbb ed34 c8fa 7b77 da69 647c fd7b 6100 0000 0045 bdfd 37bb 8888 8888 8888 8888 8aff ffff ffff ffff 84 00 00ff c9a7 1fff ffff ffff 82 0f 00ff 7704 4fff ffff ffff 84 00 00ff c9a7 1fff ffff ffff 82 0f 00ff 7704 bfff ffff ffff 84 00 00ff c9a7 1fff ffff ffff 82 13 80ff 7703 5fff ffff ffff 82 00 00ff 7743 1fff ffff ffff 82 00 00ff 7743 1fff ffff ffff 82 00 00ff 7745 efff ffff ffff 84 00 00ff df0c daff note 1 this table shows ADV601 compressed data for one field in a color ramp video sequence. the sof# and sob# codes in the data are i n bold text. bit error tolerance bit error tolerance is ensured because a bit error within a huffman coded stream does not cause #delimiter symbols to be misread by the ADV601 in decode mode. the worst error that can occur is loss of a complete block of huffman data. with the ADV601, this type of error results only in some blurring of the decoded image, not complete loss of the image.
ADV601 C32C rev. 0 applying the ADV601 this section includes the following topics: ? using the ADV601 in computer applications ? using the ADV601 in standalone applications ? configuring the host interface for 8-, 16- or 32-bit data paths ? connecting the video interface to popular video encoders and decoders ? getting the most out of the ADV601 the following analog devices products should be considered in ADV601 designs: ? adv7175/adv7176digital yuv to analog composite video encoder ? ad722analog rgb to analog composite video encoder ? ad1843audio codec with embedded video synchronization ? adsp-21xxfamily of fixed-point digital signal processors ? ad8xxxfamily of video operational amplifiers using the ADV601 in computer applications many key features of the ADV601 were driven by the demand- ing cost and performance requirements of computer applica- tions. the following ADV601 features provide key advantages in computer applications: ? host interface the 512 double word fifo provides necessary buffering of compressed digital video to deal with pci bus latency. ? low cost external dram unlike many other real-time compression solutions, the ADV601 does not require expensive external sram trans- form buffers or vram frame stores. a2 a3 d0?7 d8?15 d16?23 d24?31 a28 a29 a30 a31 decode 1 decode 2 vclk cref vsync hsync vdata [2:9] llc cref odd href field xtal saa7110 29.50000mhz pal or 24.54543mhz ntsc adr0 adr1 dq0?q7 dq8?q15 dq16?q23 dq24?q31 cs stats_r lcode 26.80000mhz xtal a0?8 d0?15 a0?8 dq1?q16 note: decode 1 asserts cs ~ on the ADV601 for host addresses 0x4000,0000 through 0x4000,0013 ADV601 host bus dram (256k x 16-bit) composite video input vclko toshiba tc514265dj/dz/dft-60 nec upd424210ale-60 nec upd42s4210ale-60 hitachi hm514265cj-60 any dram used with the ADV601 must meet the minimum specifications outlined for the hyper mode drams listed fifo_srq fifo_stp fifo_err vdata [12:19] y[0?] uv[7?] decode 2 is host specific be0 be1 be2 be3 rd wr hirq ack ras cas we ras cas oe wel weh rd wr vs figure 14. a suggested pc application design using the ADV601 in standalone applications figure 15 shows how to connect the ADV601 in noncomputer based applications. in this case, an adsp-2105 (low cost dsp) performs bw calculations and an asic controls the ADV601 though the host interface. because the adsp-2105 calculates bw during the vertical retrace period each field, most of the dsps computational bandwidth is available for other functions such as audio compression or communication. bw software for the entire family of analog devices 16-bit dsps (including the adsp-2105) will be available at no cost from analog devices. figure 16 shows the ADV601 in another noncomputer based applications. here, an adsp-21csp01 provides host control and bw calculation services. note that all control and bw operations occur over the host interface in this design. connecting the ADV601 to popular video decoders and encoders the following circuits are recommendations only. analog devices has not actually built or tested these circuits. using the brooktree bt819a video decoder brooktree has three video decoder parts, the 819a, 817a and 815a. only the 819a has an output fifo. because brooktree parts must sample at 8xfsc, this fifo is needed to resynchronize output data to the ADV601 data rates. according to the brooktree data sheet, the mode b asynchro- nous pixel interface (api) must be used to give a continuous stream of active and blanked data as required by the ADV601. an external circuit is used to generate rden (read enable) pin input for the bt819a, and the ADV601 vclko signal must be divided by two; either with an external circuit (as shown) or by setting the vclk2 bit in the mode control register.
ADV601 C33C rev. 0 a2 a3 d0?7 vclk cref vsync hsync vdata [2:9] llc cref odd href field xtal saa7110 29.50000mhz pal or 24.54543mhz ntsc adr0 adr1 dq0?q7 dq8?q15 dq16?q23 dq24?q31 rf 26.80000mhz xtal a0?8 d0?15 a0?8 dq1?q16 ADV601 system dependent asic dram (256k x 16-bit) composite video input vclko toshiba tc514265dj/dz/d ft-60 nec upd424210ale-60 nec upd42s4210ale-60 hitachi hm514265cj-60 any dram used with the ADV601 must meet the minimum specifications outlined for the hyper mode drams listed vdata [12:19] y[0?] uv[7?] rxd tclk txd rtf tfs rd sclk td tf adsp-21xx be0 vs be1 be2 be3 cs rd wr dirq ack ras cas we ras cas oe wel weh irq2 be0 be1 be2 be3 cs rd wr figure 15. suggested standalone application design adr1 adr2 data0? data8-15 adr0 clkin flin2 flin0 vclk cref vsync hsync vdata [2:9] llc cref odd href field xtal saa7110 29.50000mhz pal or 24.54543mhz ntsc adr0 adr1 dq0?q7 dq8?q15 dq16?q23 dq24?q31 stats_r lcode 26.80000mhz xtal a0?8 d0?15 a0?8 dq1?q16 the adsp-21csp01 internal clock rate double the input clock *the input clock rate = 1/2 of the internal clock rate, ranging from 12 to 21mhz ADV601 adsp-21csp01 dram (256k x 16-bit) composite video input vclko* toshiba tc514265dj/dz/dft-60 nec upd424210ale-60 nec upd42s4210ale-60 hitachi hm514265cj-60 any dram used with the ADV601 must meet the minimum specifications outlined for the hyper mode drams listed fifo_srq fifo_stp fifo_err vdata [0:19] y[0?] uv[7?] irq0 flin1 ioms rd wr vs be0 be1 be2 be3 cs rd wr hirq ack ras cas we ras cas oe wel weh ioack figure 16. alternate standalone application design
ADV601 C34C rev. 0 the bt819a has a horizontal scaling function that is used to implement the decimation from the 8xfsc rate to the required number of pixels per scan line (pdesired). the value that must be programmed is hscale. ? hscale = ((910/pdesired) C 1) 4096 {for ntsc} ? hscale = ((1135/pdesired) C 1) 4096 {for pal} note that the circuit in figure 17 has not been built or tested. vclko rden bt819a vdata (15:0) clkin xto & xt1 vclko cref vdata (9:2,19:12) ADV601 8xfsc vclk0 field hsync vsync active vclk vclk dvalid (api mode b) (philips & slave mode) field figure 17. ADV601 and bt819a example interfacing block diagram using the philips saa7110 or saa 7111 video decoder the saa7110 can only be used with square pixel sample rates. note that the circuit in figure 18 has not been built or tested. xtal (philips & slave mode) cref vs href odd saa7110 y(0:7),uv(0:7) llc xtal vclk cref vsync hsync vdata (2:9,12:19) field ADV601 figure 18. ADV601 and saa7110 example interfacing block diagram the saa7111 example circuit, which appears in figure 19, is used in this configuration on the ADV601 video lab demon- stration board. xtal (ccir-656 mode) cref saa7111 y(0:7),uv(0:7) llc xtal vclk cref vdata (2:9,12:19) ADV601 figure 19. ADV601 and saa7111 example interfacing block diagram using the analog devices adv7175 video encoder because the adv7175 has a ccir-656 interface, it connects directly with the ADV601 without glue logic. note that the adv7175 can only be used at ccir-601 sampling rates. the adv7175 example circuit, which appears in figure 20, is used in this configuration on the ADV601 video lab demon- stration board. (mode 0 & slave mode) (ccir-656 mode) xtal 10k w 150 w vclk xtal ADV601 vclko clock p7?0 adv7175 blank alsb vdata (9:2) figure 20. ADV601 and adv7175 example interfacing block diagram using the raytheon tmc22173 video decoder raytheon has a whole family of video parts. any member of the family can be used. the user must select the part needed based on the requirements of the application. because the raytheon part does not include the a/ds, an external a/d is necessary in this design (or a pair of a/ds for s video). the part can be used in ccir-656 (d1) mode for a zero con- trol signal interface or can be used with the more traditional hsync, vsync and field signals used for a philips style interface. special attention must be paid to the video output modes in order to get the right data to the right pins (see the following two diagrams). note that the circuits in figure 21 and figure 22 have not been built or tested. (philips & slave mode) mode set to: cdec = 1 yuvt = 0 f422 = 1 ldv dvsync fid(0) tmc22153 y(0:9),u(0:9) clock xtal dhsync vclk cref vclk hsync vdata (0:9,10:19) field ADV601 vsync vclkout figure 21. ADV601 and tmc22153 example philips-like mode interface mode set to: cdec = 1 yuvt = 1 f422 = x tmc22153 y(0:9) clock xtal vclk vclk vdata (0:9) ADV601 (ccir656 & slave mode) figure 22. ADV601 and tmc22153 example ccir-656 mode interface
C35C rev. 0 ADV601 getting the most out of ADV601 the unique sub-band block structure of luminance and color components in the ADV601 offers many unique application benefits. analog devices will offer a feature software library as well as separate feature application documentation to help users exploit these features. the following section provides an o ver- view of only some of the features and how they are achieved with the ADV601. please refer to figures 2 and 3 as necessary. higher compression with interfield techniques the ADV601 normally operates as a field-independent codec. however, through use of the sub-bands it is possible to use the ADV601 with interfield techniques to achieve even higher levels of compression. in such applications, each field is not com- pressed separately, thus accessing the compressed bit stream can only be done at specific points in time. there are two gen- eral ways this can be accomplished: ? subsampling high frequency blocks the human visual system is more sensitive to interframe motion of low frequency block than to motion in high fre- quency blocks. the host software driver of the ADV601 allows exploitation of this option to achieve higher com- pression. note that the compressed bit stream can only be accessed at points where the high frequency blocks have just been updated. ? updating the image with motion detection in applications where the video is likely to have no motion for extended periods of time (video surveillance in a vacant build- ing, for instance), it is only necessary to update the image either periodically or when motion occurs. by using the wave- let sub-bands to detect motion (see later in this section), it is possible to achieve very high levels of compression when motion is infrequent. scalable compression technology the ADV601 offers many different options for scaling the im- age, the compressed bit stream bandwidth and the processing horsepower for encode or decode. because the ADV601 em- ploys decimators, interpolators and filters in the filter bank, the scaling function creates much higher quality images than achieved through pixel dropping. mixing and matching the many scaling options is useful in network applications where transmission pipes may vary in available bit rate, and decode/ encode capabilities may be a mix of software and hardware. these are the key options: ? extract scaled images by factors of 2 from the compressed bit stream this is useful in video editing applications where thumbnail sketches of fields need to be displayed. in this case, editing software can quickly extract and decode the desired image. this technique eliminates the burden of decoding an entire image and then scaling to the desired size. ? use software to decode bit stream decoding an entire ccir-601 resolution image in real time at 50/60 fields per second does require the ADV601 hard ware. analog devices provides a bit-exact ADV601 simulator that can decode a scaled image in real time or a full-size image off- line. image size and frame rates depend on the performance of the host processor. ? scale bit stream the compressed video bit stream was created with simple parsing in mind. this type of parsing means that a lower resolution/lower bandwidth bit stream can be extracted with little computational burden. generally, this effect is accom- plished by selecting a subset of lower frequency blocks. this technique is useful in applications where the same video source material must be sent over a range of different commu- nication pipes {i.e., isdn p(128 kbps), t1 (1.5 mpbs) or t3 (45 mbps)}. ? use software to encode in this case, a host cpu could encode a smaller image size and fill in high frequency blocks with zeros. again, image quality would depend on the performance of the host. the bin width may be set to zero, zeroing out the data in any particular mallat block. parametric image filtering the ADV601 offers a unique set of image filtering capabilities not found in other compression technologies. the ADV601 quantizer is capable of attenuating any or all of the luminance or chrominance blocks during encode or decode. here are some of the possible applications: ? parametric softening of color saturation and contrast during encode or decode trade off image softness for higher compression. attenuation of the higher frequency blocks during encode leads to softer images, but it can lead to much higher compression perfor- mance. ? color saturation control this effect is achieved by controlling gain of low pass chromi- nance blocks during encode or decode. ? contrast control this effect is achieved by controlling the gain of the low fre- quency luminance blocks during encode or decode. ? fade to black this effect achieved by attenuation of luminance blocks. mixing of two or more images blocks from different images can be mixed into the bit stream and then sent to the ADV601 during decode. the result is high quality mixing of different images. this also provides the capa- bility to fade from one image to the next. edge or motion detection in certain remote video surveillance and machine vision applica- tions, it is desirable to detect edges or motion. edges can be quickly found through evaluation of the high frequency blocks. motion searches can be achieved in two ways: ? evaluation of the smallest luminance block . because the size of the smallest block is from 20 15 pixels (for square pixel ntsc) to 24 18 pixels (square pixel pal), the computa- tional burden is significantly less than doing an evaluation over the entire image. ? polling the sum of squares registers. because large changes in the video data create patterns, it is possible to detect motion in the video by polling the sum of squares registers, looking for patterns and changes.
C36C rev. 0 ADV601Cspecifications the ADV601 video codec uses a bi-orthogonal (7, 9) wavelet transform. recommended operating conditions parameter description min max unit v dd supply voltage 4.50 5.50 v t amb ambient operating temperature 0 +70 c electrical characteristics parameter description test conditions min max unit v ih hi-level input voltage @ v dd = max 2.0 n/a v v il lo-level input voltage @ v dd = min n/a 0.8 v v oh hi-level output voltage @ v dd = min, i oh = C0.5 ma 2.4 n/a v v ol lo-level output voltage @ v dd = min, i ol = 2 ma n/a 0.4 v i ih hi-level input current @ v dd = max, v in = v dd max n/a 10 m a i il lo-level input current @ v dd = max, v in = 0 v n/a 10 m a i ozh three-state leakage current @ v dd = max, v in = v dd max n/a 10 m a i ozl three-state leakage current @ v dd = max, v in = 0 v n/a 10 m a c i input pin capacitance @ v in = 2.5 v, f in = 1.0 mhz, t amb = 25 c n/a 8* pf c o output pin capacitance @ v in = 2.5 v, f in = 1.0 mhz, t amb = 25 c n/a 8* pf *guaranteed but not tested. absolute maximum ratings* parameter description min max unit v dd supply voltage C0.3 +7 v v in input voltage n/a v dd 0.3 v v out output voltage n/a v dd 0.3 v t amb ambient operating temperature 0 +70 c t s storage temperature C65 +150 c t l lead temperature (5 sec) pqfp n/a +280 c *stresses greater than those listed above under absolute maximum ratings may cause permanent damage to the device. this is a st ress rating only; functional opera- tion of the device at these or any other conditions above those indicated in the pin definitions section of this specification is not implied. exposure to maximum rating conditions for extended periods may affect device reliability. supply current and power parameter description test conditions min max unit i dd supply current (dynamic) @ v dd = max, t vclk _ cyc = 37 ns (at 27 mhz vclk) 0.11 0.27 a i dd supply current (soft reset) @ v dd = max, t vclk _ cyc = 37 ns (at 27 mhz vclk) 0.08 0.17 a i dd supply current (idle) @ v dd = max, t vclk _ cyc = none 0.01 0.02 a environmental conditions parameter description max unit q ca case-to-ambient thermal resistance 42 c/w q ja junction-to-ambient thermal resistance 60 c/w q jc junction-to-case thermal resistance 18 c/w warning! esd sensitive device caution the ADV601 is an esd (electrostatic discharge) sensitive device. electrostatic charges readily accumulate on the human body and equipment and can discharge without detection. permanent damage may occur to devices subjected to high energy electrostatic discharges. proper esd precautions are strongly recommended to avoid functional damage or performance degradation. the ADV601 latchup immunity has been demonstrated at 3 100 ma/C80 ma on all pins when tested to industry standard/jedec methods.
ADV601 C37C rev. 0 timing parameters this section contains signal timing information for the ADV601. timing descriptions for the following items appear in this section: ? clock signal timing ? video data transfer timing (ccir-656, gray scale/philips, and multiplexed philips formats) ? host data transfer timing (direct register read/write access) ? dsp data transfer (serial data transfer) clock signal timing the diagram in this section shows timing for vclk input and vclko output. all output values assume a maximum pin loading of 50 pf. table xx. video clock period, frequency, drift and jitter min vclk_cyc nominal vclk_cyc max vclk_cyc video format period period (frequency) period 1, 2 ccir-601 pal 35.2 ns 37 ns (27 mhz) 38.9 ns square pixel pal 32.2 ns 33.89 ns (29.5 mhz) 35.5 ns ccir-601 ntsc 35.2 ns 37 ns (27 mhz) 38.9 ns square pixel ntsc 38.7 ns 40.75 ns (24.54 mhz) 42.7 ns notes 1 vclk period drift = 0.1 (vclk_cyc/field. 2 vclk edge-to-edge jitter = 1 ns. table xxi. video clock duty cycle min nominal max vclk duty cycle 1 (40%) (50%) (60%) note 1 vclk duty cyle = t vclk_hi /(t vclk_lo ) 100. table xxii. video clock timing parameters parameter description min max unit t vclk_cyc vclk signal, cycle time (1/frequency) at 27 mhz (see video clock period table) t vclko_d0 vclko signal, delay (when vclk2 = 0) at 27 mhz 10 29 ns t vclko_d1 vclko signal, delay (when vclk2 = 1) at 27 mhz 10 29 ns test conditions figure 23 shows test condition voltage reference and device loading information. these test conditions consider an output as disabled when the output stops driving and goes from the measured high or low voltage to a high impedance state. tests measure output disable time (t disable ) as the time between the reference input signal crossing +1.5 v and the time that the output reaches the high impedance state (also +1.5 v). simi- larly, these tests conditions consider an output as enabled when the output leaves the high impedance state and begins driving a measured high or low voltage. tests measure output enable time (t enable ) as the time between the reference input signal crossing +1.5 v and the time that the output reaches the measured high or low voltage. input reference signal output signal t disabled t enabled 1.5v v oh v ol v ih v il 1.5v input & output voltage/timing references device loading for ac measurements to output pin 2pf +1.5v i ol i oh figure 23. test condition voltage reference and device loading
ADV601 C38C rev. 0 ccir-656 video format timing the diagrams in this section show transfer timing for pixel (ycrcb), line (horizontal), and frame (vertical) data in ccir-656 v ideo mode. all output values assume a maximum pin loading of 50 pf. note that in timing diagrams for ccir-656 video, the label ctrl indicates the vsync, hsync, and field pins. also note that for ccir-656 video mode, the cref pin is unused. table xxiii. ccir-656 videodecode pixel (ycrcb) timing parameters parameter description min max units t vdata_dc_d vdata signals, decode ccir656 mode, delay n/a 14 ns t vdata_dc_oh vdata signals, decode ccir656 mode, output hold 2 n/a ns t ctrl_dc_d ctrl signals, decode ccir656 mode, delay n/a 11 ns t ctrl_dc_oh ctrl signals, decode ccir656 mode, output hold 3 n/a ns (o) ctrl (o) vclko t ctrl_dc_oh (o) vdata t vdata_dc_oh t vdata_dc_d valid valid valid t ctrl_dc_d valid valid valid figure 25. ccir-656 videodecode pixel (ycrcb) transfer timing table xxiv. ccir-656 videoencode pixel (ycrcb) timing parameters parameter description min max units t vdata_ec_s vdata bus, encode ccir656 mode, setup 2 n/a ns t vdata_ec_h vdata bus, encode ccir656 mode, hold 5 n/a ns t ctrl_ec_d ctrl signals, encode ccir656 mode, delay n/a 33 ns t ctrl_ec_oh ctrl signals, encode ccir656 mode, output hold 20 n/a ns t vdata_ec_h (o) ctrl (i) vclk (i) vdata asserted valid asserted valid t vdata_ec_s t ctrl_ec_d t ctrl_ec_oh figure 26. ccir-656 videoencode pixel (ycrcb) transfer timing (i) vclk (o) vclko (vclk2 = 0) (i) vclko (vclk2 = 1) t vclk_cyc t vclko_d0 t vclko_d1 note: use vclk for clocking video-encode operations and use vclko for clocking video-decode operations. do not try to use either clock for both encode and decode. figure 24. video clock timing
ADV601 C39C rev. 0 figure 27. ccir-656 videoline (horizontal) and frame (vertical) transfer timing note that for ccir-656 videodecode and master line (horizontal) timing, vdata is synchronous with vclk0. (o) stats_r (encode) (o) hsync (o) vsync (o) field 625 (pal) line # 621622623624625123456 310311312313314315316317318319 21 22 23 24 309 encode / decode & master ccir-656 -- 625 (pal) frame (vertical) transfer timing 334 335 336 337 (note: stats_r is always lo for 45 cycles before going hi again. stats_r is lo coming out of soft reset and goes high right aft er the ADV601 finishes taking in the very first field.) (o) hsync (i) vclk (i) vdata ff xx ff xx sample 0 ntsc ccir-601 pixel, n = 720 ntsc square pixel, n = 640 * * (note: the ADV601 supports square pixel modes in ccir-656 format as an extension to the ccir-656 standard.) (o) vclko (vclk2 = 0) (o) vclko (vclk2 = 1) encode ccir-656 -- line (horizontal) transfer timing (for decode vdata is sychronous to vclko) t vdata_ec_h t vdata_ec_s y 2 pal ccir-601 pixel, n = 720 pal square pixel, n = 768 * cr 0 y 1 y 0 cb 2 cb 0 y n-2 cb n-2 cr n-2 y n-1 eav sav (o) stats_r (encode) (o) hsync (o) vsync (o) field 525 (ntsc) line # 524 525 123456789 263264265266267268 282 283 284 262 335 336 337 338 encode / decode ccir-656 -- 525 (ntsc) frame (vertical) transfer timing (note: stats_r is always lo for 45 cycles before going hi again. stats_r is lo coming out of soft reset and goes high right aft er the ADV601 finishes taking in the very first field.) 20 21 22 23
ADV601 C40C rev. 0 gray scale/philips video timing the diagrams in this section show transfer timing for pixel (ycrcb), line (horizontal) and frame (vertical) data in gray scale or philips video modes. all output values assume a maximum pin loading of 50 pf. note that in timing diagrams for gray scale/phili ps video, the label ctrl indicates the vsync, hsync and field pins. table xxv. gray scale/philips videodecode and master pixel (ycrcb) timing parameters parameter description min max unit t vdata_dmgp_d vdata bus, decode master gray scale/philips, delay n/a 14 ns t vdata_dmgp_oh vdata bus, decode master gray scale/philips, output hold 2 n/a ns t ctrl_dmgp_d ctrl signals, decode master gray scale/philips, delay n/a 11 ns t ctrl_dmgp_oh ctrl signals, decode master gray scale/philips, output hold 3 n/a ns t cref_dmgp_d cref signal, decode master gray scale/philips, delay n/a 12 ns t cref_dmgp_oh cref signal, decode master gray scale/philips, output hold 4 n/a ns (o) ctrl (o) vclko t ctrl_dmgp_oh (o) vdata t vdata_dmgp_oh t cref_dmgp_oh (o) cref valid t ctrl_dmgp_d t vdata_dmgp_d t cref_dmgp_d valid valid valid t cref_dmgp_oh t cref_dmgp_d figure 28. gray scale/philips videodecode and master pixel (ycrcb) transfer timing table xxvi. gray scale/philips videodecode and slave pixel (ycrcb) timing parameters parameter description min max unit t vdata_dsgp_d vdata bus, decode slave gray scale/philips, delay n/a 14 ns t vdata_dsgp_oh vdata bus, decode slave gray scale/philip, output hold 2 n/a ns t ctrl_dsgp_s ctrl signals, decode slave gray scale/philip, setup 2 n/a ns t ctrl_dsgp_h ctrl signals, decode slave gray scale/philips, hold 42 n/a ns t cref_dsgp_s cref signal, decode slave gray scale/philips, setup 3 n/a ns t cref_dsgp_h cref signal, decode slave gray scale/philips, hold 3 n/a ns (i) ctrl (o) vclko (o) vdata valid t vdata_dsgp_oh (i) cref valid valid t ctrl_dsgp_s t vdata_dsgp_d valid t cref_dsgp_s t cref_dsgp_h t ctrl_dsgp_h t cref_dsgp_s t cref_dsgp_h figure 29. gray scale/philips videodecode and slave pixel (ycrcb) transfer timing
ADV601 C41C rev. 0 table xxvii. gray scale/philips encode and master video timing parameters parameter description min max unit t vdata_emgp_s vdata bus, encode master gray scale/philips, setup 2 n/a ns t vdata_emgp_h vdata bus, encode master gray scale/philips, hold 5 n/a ns t ctrl_emgp_d ctrl signals, encode master gray scale/philips, delay n/a 33 ns t ctrl_emgp_oh ctrl signals, encode master gray scale/philips, output hold 20 n/a ns t cref_emgp_d cref signal, encode master gray scale/philips, delay n/a 33 ns t cref_emgp_oh cref signal, encode master gray scale/philips, output hold 13 n/a ns (o) ctrl (i) vclk (i) vdata t ctrl_emgp_d asserted t vdata_emgp_s t vdata_emgp_h valid asserted valid (o) cref t ctrl_emgp_oh t cref_emgp_oh t cref_emgp_d figure 30. gray scale/philips videoencode and master pixel (ycrcb) transfer timing table xxviii. gray scale/philips videoencode and slave pixel (ycrcb) timing parameters parameter description min max unit t vdata_esgp_s vdata bus, encode slave gray scale/philips, setup 2 n/a ns t vdata_esgp_h vdata bus, encode slave gray scale/philips, hold 5 n/a ns t ctrl_esgp_s ctrl signals, encode slave gray scale/philips, setup 30 n/a ns t ctrl_esgp_h ctrl signals, encode slave gray scale/philips, hold 30 n/a ns t cref_esgp_s cref signal, encode slave gray scale/philips, setup 5 n/a ns t cref_esgp_h cref signal, encode slave gray scale/philips, hold 5 n/a ns (i) ctrl (i) vclk (i) vdata t ctrl_esgp_h asserted t vdata_esgp_s t vdata_esgp_h t cref_esgp_h valid (i) cref asserted valid t ctrl_esgp_s t cref_esgp_s figure 31. gray scale/philips videoencode and slave pixel (ycrcb) transfer timing
ADV601 C42C rev. 0 figure 32. gray scale/philips videoline (horizontal) and frame (vertical) transfer timing note: for ccir-656 videodecode and master line (horizontal) timing, vdata is synchronous with vclk0. cref (i - encode) (o - decode) (i) vclk (i) vdata bits [9:0] u n-6 v n-6 y n-5 sample 0 pal ccir-601 pixel, n = 720 ntsc ccir-601 pixel, n = 720 pal square pixel, n = 768 ntsc square pixel, n = 640 (o) hsynch (i) vdata bits [19:10] y n-6 u n-4 v n-4 y n-3 y n-4 u n-2 v n-2 y n-1 y n-2 v 0 u 1 y 2 y 1 v 1 u 2 y 4 y 3 v 2 y 5 u 0 y 0 (note: ADV601 gets hsynch from philips href) (o) vclko (vclk2 = 0) (o) vclko (vclk2 = 1) t vdata_emgp_s t vdata_emgp_h encode master philips -- line (horizontal) transfer timing (for decode vdata is sychronous to vclko) stats _ r (encode) hsync vsync 625 (pal) line # 621 622 623 624 625 1 2 3 4 5 6 310 311 312 313 314 315 316 317 318 319 8 23 24 309 7 320 321 (note: stats_r is always lo for 45 cycles before going hi again. stats_r is lo coming out of soft reset and goes high right aft er the ADV601 finishes taking in the very first field.) encode / decode & master philips -- 625 (pal) frame (vertical) transfer timing 335 336 (note: ADV601 gets hsynch from philips href) (o) field stats_r (encode) hsync vsync 525 (ntsc) line # 524525123456789 263 264 265 266 267 268 262 335 336 337 338 encode / decode & master philips -- 525 (ntsc) frame (vertical) transfer timing 282 283 284 22 23 24 21 (note: stats_r is always lo for 45 cycles before going hi again. stats_r is lo coming out of soft reset and goes high right aft er the ADV601 finishes taking in the very first field.) (o) field (note: ADV601 in slave mode gets hsynch from philips href)
ADV601 C43C rev. 0 multiplexed philips video timing the diagrams in this section show transfer timing for pixel (ycrcb) data in multiplexed philips video mode. for line (horizonta l) and frame (vertical) data transfer timing, see the gray scale/philips video timing section. all output values assume a maximum pin loading of 50 pf. note that in timing diagrams for multiplexed philips video, the label ctrl indicates the vsync, hsync and field pins. also note that for multiplexed philips mode the cref pin is unused. table xxix. multiplexed philips videodecode and master pixel (ycrcb) timing parameters parameter description min max unit t vdata_dmm_d vdata bus, decode master multiplexed philips, delay n/a 14 ns t vdata_dmm_oh vdata bus, decode master multiplexed philips, output hold 2 n/a ns t ctrl_dmm_d ctrl signals, decode master multiplexed philips, delay n/a 11 ns t ctrl_dmm_oh ctrl signals, decode master multiplexed philips, output hold 3 n/a ns (o) ctrl (o) vclko t ctrl_dmm_oh (o) vdata t vdata_dmm_oh t vdata_dmm_d valid valid valid t ctrl_dmm_d valid valid valid figure 33. multiplexed philips videodecode and master pixel (ycrcb) transfer timing table xxx. multiplexed philips videodecode and slave pixel (ycrcb) timing parameters parameter description min max unit t vdata_dsm_d vdata bus, decode slave multiplexed philips, delay n/a 14 ns t vdata_dsm_oh vdata bus, decode slave multiplexed philips, output hold 2 n/a ns t ctrl_dsm_s ctrl signals, decode slave multiplexed philips, setup 2 n/a ns t ctrl_dsm_h ctrl signals, decode slave multiplexed philips, hold 42 n/a ns (i) ctrl (o) vclko (o) vdata t ctrl_dsm_h valid t vdata_dsm_oh valid valid valid t vdata_dsm_d t ctrl_dsm_s figure 34. multiplexed philips videodecode and slave pixel (ycrcb) transfer timing
ADV601 C44C rev. 0 table xxxi. multiplexed philips video encode and master pixel (ycrcb) timing parameters parameter description min max unit t vdata_emm_s vdata bus, encode master multiplexed philips, setup 2 n/a ns t vdata_emm_h vdata bus, encode master multiplexed philips, hold 5 n/a ns t ctrl_emm_d ctrl signals, encode master multiplexed philips, delay n/a 33 ns t ctrl_emm_oh ctrl signals, encode master multiplexed philips, output hold 20 n/a ns (o) ctrl (i) vclk (i) vdata asserted valid asserted valid t vdata_emm_s t vdata_emm_h t ctrl_emm_oh t ctrl_emm_d figure 35. multiplexed philips videoencode and master pixel (ycrcb) transfer timing table xxxii. multiplexed philips videoencode and slave pixel (ycrcb) timing parameters parameter description min max unit t vdata_esm_s vdata bus, encode slave multiplexed philips mode, setup 2 n/a ns t vdata_esm_h vdata bus, encode slave multiplexed philips mode, hold 5 n/a ns t ctrl_esm_s ctrl signals, encode slave multiplexed philips mode, setup 30 n/a ns t ctrl_esm_h ctrl signals, encode slave multiplexed philips mode, hold 30 n/a ns (i) ctrl (i) vclk (i) vdata t ctrl_esm_h asserted t vdata_esm_s t vdata_esm_h valid asserted valid t ctrl_esm_s figure 36. multiplexed philips videoencode and slave pixel (ycrcb) transfer timing
ADV601 C45C rev. 0 host interface (indirect address, indirect register data, and interrupt mask/status) register timing the diagrams in this section show transfer timing for host read and write accesses to all of the ADV601s direct registers, exc ept the compressed data register. accesses to the indirect address, indirect register data, and interrupt mask/status registers are slower than access timing for the compressed data register. for information on access timing for the compressed data direct register, see the host interface (compressed data) register timing section. note that for accesses to the indirect address, indirect register data and interrupt mask/status registers, your system must observe ack and rd or wr assertion timing. table xxxiii. host (indirect address, indirect data, and interrupt mask/status) read timing parameters parameter description min max unit t rd_d_rdc rd signal, direct register, read cycle time (at 27 mhz vclk) n/a 1 n/a ns t rd_d_pwa rd signal, direct register, pulse width asserted (at 27 mhz vclk) n/a 1 n/a ns t rd_d_pwd rd signal, direct register, pulse width deasserted (at 27 mhz vclk) 5 n/a ns t adr_d_rds adr bus, direct register, read setup 2 n/a ns t adr_d_rdh adr bus, direct register, read hold 2 n/a ns t data_d_rdd data bus, direct register, read delay n/a 171.6 2, 3 ns t data_d_rdoh data bus, direct register, read output hold (at 27 mhz vclk) 13 n/a ns t rd_d_wrt wr signal, direct register, read-to-write turnaround (at 27 mhz vclk) 48.7 4 n/a ns t ack_d_rdd ack signal, direct register, read delayed 27 mhz vclk) 8.6 287.1 5, 6 ns t ack_d_rdoh ack signal, direct register, read output hold (at 27 mhz vclk) 11 n/a ns notes 1 rd input must be asserted (low) until ack is asserted (low). 2 maximum t data_d_rdd varies with vclk according to the formula: t data_d_rdd (max) = 4 (vclk period) +16. 3 during stats_r deasserted (low) conditions, t data_d_rdd may be as long as 52 vclk periods. 4 minimum t rd_d_wrt varies with vclk according to the formula: t rd_d_wrt (min) = 1.5 (vclk period) C4.1. 5 maximum t ack_d_rdd varies with vclk according to formula: t ack_d_rdd (max) = 7 (vclk period) +14.8. 6 during stats_r deasserted (low) conditions, t ack_d_rdd may be as long as 52 vclk periods. valid valid valid valid (i) adr, be , cs (i) rd (o) data (o) ack (i) wr t adr_d_rds t ack_d_rdoh t rd_d_rdc t rd_d_pwa t rd_d_pwd t adr_d_rdh t data_d_r d d t data_d_rdoh t rd_d_wrt t ack_d_rdd figure 37. host (indirect address, indirect register data, and interrupt mask/status) read transfer timing
ADV601 C46C rev. 0 table xxxiv. host (indirect address, indirect data, and interrupt mask/status) write timing parameters parameter description min max unit t wr_d_wrc wr signal, direct register, write cycle time (at 27 mhz vclk) n/a 1 n/a ns t wr_d_pwa wr signal, direct register, pulse width asserted (at 27 mhz vclk) n/a 1 n/a ns t wr_d_pwd wr signal, direct register, pulse width deasserted (at 27 mhz vclk) 5 n/a ns t adr_d_wrs adr bus, direct register, write setup 2 n/a ns t adr_d_wrh adr bus, direct register, write hold 2 n/a ns t data_d_wrs data bus, direct register, write setup C20 n/a ns t data_d_wrh data bus, direct register, write hold 0 n/a ns t wr_d_rdt wr signal, direct register, read turnaround (after a write) (at 27 mhz vclk) 35.6 2 n/a ns t ack_d_wrd ack signal, direct register, write delay (at 27 mhz vclk) 8.6 182.1 3, 4 ns t ack_d_wroh ack signal, direct register, write output hold 11 n/a ns notes 1 wr input must be asserted (low) until ack is asserted (low). 2 minimum t wr_d_rdt varies with vclk according to the formula: t wr_d_rdt (min) = 0.8 (vclk period) +7.4. 3 maximum t wr_d_wrd varies with vclk according to the formula: t ack_d_wrd (max) = 4.3 (vclk period) +14.8. 4 during stats_r deasserted (low) conditions, t ack_d_wrd may be as long as 52 vclk periods. valid valid valid valid (i) adr, be , cs (i) wr (i) data (o) ack (i) rd t adr_d_wrs t data_d_wrs t ack_d_wroh t wr_d_wrc t wr_d_pwa t wr_d_pwd t adr_d_wrh t data_d_wrh t ack_d_wrd t wr_d_rdt figure 38. host (indirect address, indirect register data, and interrupt mask/status) write transfer timing
ADV601 C47C rev. 0 host interface (compressed data) register timing the diagrams in this section show transfer timing for host read and write transfers to the ADV601s compressed data register. a c- cesses to the compressed data register are faster than access timing for the indirect address, indirect register data, and inte rrupt mask/status registers. for information on access timing for the other registers, see the host interface (indirect address , indirect regis ter data, and interrupt mask/status) register timing section. also note that as long as your system observes the rd or wr signal assertion timing, your system does not have to wait for the ack signal between new compressed data addresses. table xxxv. host (compressed data) read timing parameters parameter description min max unit t rd_cd_rdc rd signal, compressed data direct register, read cycle time 28 n/a ns t rd_cd_pwa rd signal, compressed data direct register, pulse width asserted 10 n/a ns t rd_cd_pwd rd signal, compressed data direct register, pulse width deasserted 10 n/a ns t adr_cd_rds adr bus, compressed data direct register, read setup 2 n/a ns t adr_cd_rdh adr bus, compressed data direct register, read hold (at 27 mhz vclk) 2 n/a ns t data_cd_rdd data bus, compressed data direct register, read delay n/a 10 ns t data_cd_rdoh data bus, compressed data direct register, read output hold 18 n/a ns t ack_cd_rdd ack signal, compressed data direct register, read delay n/a 18 ns t ack_cd_rdoh ack signal, compressed data direct register, read output hold 9 n/a ns (i) adr, be , cs (i) rd (o) data (o) ack valid valid valid valid t adr_cd_rds t data_cd_rdd t ack_cd_rdd t ack_cd_rdoh t data_cd_rdoh t adr_cd_rdh t rd_cd_rdc t rd_cd_pwa t rd_cd_pwd figure 39. host (compressed data) read transfer timing
ADV601 C48C rev. 0 table xxxvi. host (compressed data) write timing parameters parameter description min max unit t wr_cd_wrc wr signal, compressed data direct register, write cycle time 28 n/a ns t wr_cd_pwa wr signal, compressed data direct register, pulse width asserted 10 n/a ns t wr_cd_pwd wr signal, compressed data direct register, pulse width deasserted 10 n/a ns t adr_cd_wrs adr bus, compressed data direct register, write setup 2 n/a ns t adr_cd_wrh adr bus, compressed data direct register, write hold 2 n/a ns t data_cd_wrs data bus, compressed data direct register, write setup 2 n/a ns t data_cd_wrh data bus, compressed data direct register, write hold 2 n/a ns t ack_cd_wrd ack signal, compressed data direct register, write delay n/a 19 ns t ack_cd_wroh ack signal, compressed data direct register, write output hold 9 n/a ns (i) adr, be , cs (i) wr (i) data (o) ack valid t adr_cd_wrh t adr_cd_wrs t data_cd_wrs t data_cd_wrh t ack_cd_wrd t wr_cd_wrc t ack_cd_wroh valid valid valid t wr_cd_pwa t wr_cd_pwd figure 40. host (compressed data) write transfer timing
ADV601 C49C rev. 0 dsp interface timing the diagram in this section shows transfer timing for one set of video statistics and calculated bin widths as they pass throug h the ADV601s dsp interface. whenever an ADV601s serial port is inactive, the codecs txd pin is three-stated and the codec ignores the state of the rxd pin. figure 41 illustrates the ADV601 serial interfaces signal, sample and frame relationships for the tr ansmit and receive modes. table xxxvii. dsp read and write transfer timing parameters parameter description min max unit t tclk_dirq_d dirq signal, transfer-receive cycle start, delay n/a 4 ns t tclk_dirq_oh dirq signal, transfer-receive cycle end, output hold 3 n/a ns t vclk_tclk_d tclk signal, referenced to vclk, delay n/a 11 ns t tclk_tf_d tf signal, transfer frame reference to tclk, delay n/a 3 ns t tclk_tf_oh tf signal, transfer frame reference to tclk, output hold 2 n/a ns t tclk_txd_d txd sample, transfer data, delay (at 27 mhz vclk) n/a 24.2 1 ns t tclk_txd_oh txd sample, transfer data, output hold 2 n/a ns t tclk_rf_s rf signal, receive frame referenced to tclk, setup 2 n/a ns t tclk_rf_h rf signal, receive frame referenced to tclk, hold 105 n/a ns t tclk_rxd_s rxd sample, receive data, setup 2 n/a ns t tclk_rxd_h rxd sample, receive data, hold (at 27 mhz vclk) 16.8 2 n/a ns notes 1 maximum t tclk_txd_d varies with vclk according to the formula: t tclk_txd_d (max) = 0.5 (vclk period) +4.7. 2 minimum t tclk_rxd_h varies with vclk according to the formula: t tclk_rxd_h (min) = 1.5 (vclk period) C36. (o) dirq dsp calculates bin widths from video statistics (i) vclk (o) tclk tclk period = 4 vclk period fifty-two 16-bit words transferred by the ADV601 -- ADV601 registers 0x06 and 0x80 through 0xb2 eighty-four 16-bit words transferred by the dsp -- ADV601 registers 0x100 through 0x153 (o) tf (o) txd t tclk_txd_oh t tclk_txd_d t tclk_rf_s t tclk_rxd_h t tclk_rxd_s (i) rf (i) rxd t tclk_dirq_oh t tclk_dirq_d t tclk_tf_d t vclk_tclk_d t tclk_rf_h t tclk_tf_oh figure 41. dsp read and write transfer timing
ADV601 C50C rev. 0 pin pin pin name type 1 data4 i/o 2 data3 i/o 3 data2 i/o 4 data1 i/o 5 data0 i/o 6 vdd power 7 gnd ground 8 rd i 9 wr i 10 cs i 11 adr1 i 12 adr0 i 13 gnd ground 14 be3 i 15 be2 i 16 be1 i 17 be0 i 18 gnd ground 19 reset i 20 vdd power 21 ack o 22 vdd power 23 gnd ground 24 hirq o 25 lcode o 26 fifo_err o 27 fifo_stp o 28 fifo_srq o 29 stats_r o 30 vdd power 31 dirq o 32 txd o 33 tf o 34 tclk o 35 gnd ground 36 rxd i 37 rf i 38 gnd ground 39 vdd power 40 dadr8 o 41 dadr7 o 42 dadr6 o 43 dadr5 o 44 dadr4 o 45 dadr3 o 46 vdd power 47 gnd ground 48 dadr2 o 49 dadr1 o 50 dadr0 o 51 vdd power 52 gnd ground 53 ras o 54 cas o 55 we o pin pin pin name type 56 gnd ground 57 vdd power 58 gnd ground 59 vdd power 60 ddat15 i/o 61 ddat14 i/o 62 ddat13 i/o 63 gnd ground 64 ddat12 i/o 65 ddat11 i/o 66 ddat10 i/o 67 ddat9 i/o 68 gnd ground 69 vdd power 70 ddat8 i/o 71 ddat7 i/o 72 ddat6 i/o 73 ddat5 i/o 74 gnd ground 75 vdd power 76 ddat4 i/o 77 ddat3 i/o 78 ddat2 i/o 79 ddat1 i/o 80 ddat0 i/o 81 gnd ground 82 vdata19 i/o 83 vdata18 i/o 84 vdata17 i/o 85 vdata16 i/o 86 vdata15 i/o 87 vdata14 i/o 88 vdd power 89 gnd ground 90 vdata13 i/o 91 vdata12 i/o 92 vdata11 i/o 93 vdata10 i/o 94 vdd power 95 cref i/o 96 gnd ground 97 enc o 98 vclko o 99 vdd power 100 xtal i 101 vclk i 102 gnd ground 103 field i or o 104 hsync i or o 105 vsync i or o 106 gnd ground 107 vdd power 108 vdata9 i/o 109 vdata8 i/o 110 vdata7 i/o pin pin pin name type 111 vdata6 i/o 112 gnd ground 113 vdd power 114 vdata5 i/o 115 vdata4 i/o 116 vdata3 i/o 117 vdata2 i/o 118 vdata1 i/o 119 vdata0 i/o 120 gnd ground 121 data31 i/o 122 data30 i/o 123 data29 i/o 124 data28 i/o 125 vdd power 126 gnd ground 127 data27 i/o 128 data26 i/o 129 data25 i/o 130 data24 i/o 131 gnd ground 132 data23 i/o 133 data22 i/o 134 data21 i/o 135 data20 i/o 136 gnd ground 137 vdd power 138 data19 i/o 139 data18 i/o 140 data17 i/o 141 data16 i/o 142 gnd ground 143 gnd ground 144 vdd power 145 gnd ground 146 vdd power 147 data15 i/o 148 data14 i/o 149 data13 i/o 150 gnd ground 151 data12 i/o 152 data11 i/o 153 data10 i/o 154 data9 i/o 155 gnd ground 156 vdd power 157 data8 i/o 158 data7 i/o 159 data6 i/o 160 data5 i/o pinouts
ADV601 C51C rev. 0 pin configuration . 11 10 16 15 14 13 18 17 20 19 22 21 12 24 23 26 25 28 27 30 29 34 33 32 31 36 35 38 37 40 39 5 4 3 2 7 6 9 8 1 42 43 44 45 46 48 49 50 51 52 53 54 55 56 57 58 59 60 41 47 79 77 76 75 74 73 72 71 70 69 68 67 65 64 63 62 61 78 80 66 116 117 119 114 115 112 113 111 12 0 110 118 105 106 107 108 103 104 102 100 101 109 99 97 98 95 96 93 94 91 92 90 86 87 88 89 84 85 82 83 81 1 60 159 158 157 156 155 1 54 1 53 1 52 151 143 1 50 149 14 8 14 7 14 6 14 5 14 4 14 2 14 1 14 0 1 39 1 38 1 37 1 36 1 35 1 34 1 33 1 32 1 31 1 30 1 29 1 28 1 27 1 26 1 25 1 24 1 23 1 22 12 1 pin 1 identifier pqfp top view (pins down) data5 data6 data7 data8 gnd data9 data10 data11 data12 gnd data13 data14 data15 vdd gnd vdd gnd gnd data16 data17 data18 data19 vdd gnd data20 data22 data23 gnd data24 data25 data26 data27 gnd vdd data28 data29 data30 data31 data21 vdd dadr7 dadr6 dadr5 dadr4 dadr3 vdd gnd dadr2 dadr1 dadr0 vdd gnd ddat15 ddat14 ddat13 gnd ddat12 ddat11 ddat10 ddat9 gnd vdd ddat8 ddat7 ddat6 ddat5 gnd vdd ddat4 ddat3 ras cas we gnd vdd gnd vdd ddat2 ddat1 ddat0 gnd vdata0 vdata1 vdata2 vdata3 vdata4 vdata5 vdd gnd vdata6 vdata7 vdata8 vdata9 vdd gnd vsnyc hsnyc field gnd vclk xtal vdd vclko enc gnd cref vdd vdata10 vdata11 vdata12 vdata13 gnd vdd vdata14 vdata15 vdata16 vdata17 vdata18 vdata19 gnd data4 data3 data2 data1 data0 vdd gnd rd wr cs adr1 adr0 gnd be3 be2 be1 be0 gnd reset vdd ack vdd gnd hirq lcode fifo_err fifo_stp fifo_srq stats_r vdd dirq txd tf tclk gnd rxd rf gnd vdd dadr8 ADV601
ADV601 C52C rev. 0 outline dimensions dimensions shown in inches and (mm). c3041C12C4/97 printed in u.s.a. 160-lead pqfp (s-160) top view (pins down) pin 1 121 160 1 120 41 40 80 81 1.238 (31.45) 1.228 (31.20) typ sq 1.219 (30.95) 0.028 (0.72) 0.026 (0.65) typ lead 0.023 (0.58) pitch 1.106 (28.10) 1.102 (28.00) typ sq 1.098 (27.90) 1.008 (25.60) 0.998 (25.35) typ sq 0.988 (25.10) 0.015 (0.38) 0.012 (0.30) typ lead 0.009 (0.22) width 0.160 (4.07) max 0.041 (1.03) 0.035 (0.88) typ 0.029 (0.73) seating plane 0.004 (0.10) max 0.010 (0.25) min 0.145 (3.67) 0.135 (3.42) typ 0.125 (3.17) ordering guide part number ambient temperature range 1 package description package option 2 ADV601js 0 c to +70 c 160-lead pqfp s-160 notes 1 j = commercial temperature range (0 c to +70 c). 2 s = pqfp (plastic quad flatpack).


▲Up To Search▲   

 
Price & Availability of ADV601

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X